[학부 과정] 데이터 통신 12주차
블록 코딩
에러 디텍션과 에러 커렉션에 가장 쉽기 설명하기 위해서
해밍코드, 짝수 패러티는 블록 코딩의 계열이다.
74 해밍코드는 4비트를 7비트로 만든다는 소리이다. 카톡에서 메시지는 바이너리 시퀀스로 바꾸면 긴 비트로 나오는데, 4비트로 쪼개서 자동으로 7비트를 만든다. 만들어진 비트는 블록단위로 처리하기 때문에 블록 코딩이라고 한다.
채널 상태에 따라 데이터를 많이 보낼지 말지 정한다. 데이터의 크기는 가변적이다. 내가 보낼 데이터는 블록 단위로 해서 인코딩을 한다. 씨클릭 코드는 에러디텍션에서 쓰이는 코드이다. 나눗셈 연산을 이용한다. 보낼려는 시퀀스를 다항식으로 표현한다고 가정하고 나머지 세 비트는 000을 넣어서 7비트를 만들어준다. 최종적으로 나머지를 000과 바꿔준다. 뺄셈이 덧셈과 동일하다. 수학적으로 그렇게 정의했기 때문이다. 그럼 나누는 수는 어떻게 정할까? 원리는 너무 어렵다. 이산수학 파트도 알아야한다. 인코딩과 디코딩 과정만 이해하자.
나눠주는 수는 Generator Polynomic 라고 부른다. syndrome이 0이 나오면 오류가 없음을 알 수 있다. 페이지 34. 예제 10.10 표를 보자. 비트는 차수보다 하나 더 크다. 나머지는 몫보다 차수가 낮다. 예를 들어, divider는 33비트 나머지는 32비트이다. 체크섬은 3,4계층에서 씨클릭은 1,2계층에서 많이 쓰인다. 체크섬은 시험에 안나옴
10-5 내용 어려움. forward error correction / 여태까지 에러 디텍션을 위한 거였다. 오류를 찾을 수 있지만 어디에서 오류가 났는진 몰랐다. 해밍코드는 1비트까진 고칠 수 있지만 여러 비트를 고칠 수 있는게 10-5이다. 고칠 수 있는 Dmin과 관련이 있다. 기하학적으로 거리가 5정도 떨어지면 2개 정돈 고칠 수 있다. 영역 내에서 고칠 수 있으면 고치고 밖에 있으면 못 고친다. 지금까지 2계층에 대한 프로토콜을 배웠다.
layer4에 나오는 재전송도 잠깐 배웠고 18장을 통해서 3계층 네트워크에 대해서 공부할 것이다.
ip 프로토콜, special address를 배울 것이다. 4계층에서 세그먼트를 만들어주면 3계층에서 거의 똑같이 보내주고 앞에 ip주소만 붙여서 ip패킷, 패킷타이징이라고 부른다. 경로를 알려주는 건 라우팅, 보내주는 건 포워딩. 3계층에서는 에러 컨트롤 플로우 컨트롤을 수행하지 않고 4계층이 수행한다. 웨이브 같은 경우 udp 프로토콜을 사용한다. congestion 컨트롤도 수행안한다. Qos는 한다. 서비스 품질의 요소에는 delay를 적게 하거나, 전력을 낮게 하거나, 패킷을 안정적으로 보내거나 등이 있다. 요새는 네트워크 장비를 만들 때, 소프트웨어로 만들기 때문에 Qos도 알고리즘이 있다. SKT는 워낙 사람 안뽑는다... Qos 프로그램을 만들려고 하는데 어떻게 만들어야 하나요? 물어본다. MAC 주소체계는 2계층에서 사용하지만 찾아내는건 3계층에서 찾아낸다. 네트워크의 성능지표 중 딜레이. transmission, propagation,processing,queuing가 있다. Tfr이라고 표현하고 transmission delay이라고 한다. (TTI). Propagation delay는 송수기와 수신기 사이의 거리에 의해 결정되고 전달되는 속도(빛)에 의해 결정된다. 매질에 따라 달라진다. 프로세싱은 전반적인 처리 딜레이. 큐잉 딜레이는 디코더 입장에서 버퍼에 대기하는 시간을 의미한다. total delay는 모두 합친걸 의미한다. Throughput. 1초동안 데이터를 얼마만큼 보낼 수 있느냐이다. 패킷 로스는 송신기에서 수신기까지 총 100개를 보냈는데, 99개는 잘 왔고 1개는 오류가 났다면 확률로 따지면 0.01%이다. 혼잡제어는 2계층과 4계층에서 진행한다. 정보는 ICMP가 준다. 4계층에서 혼잡제어를 Load balancing으로 해준다. 4계층이 있는 스위칭에 장비는 로드 밸런싱을 해준다. 알고리즘은 스킵~ 학부과정이 아니랍니다.. 근데 궁금하다 찾아봐야지~~~~~~