본문 바로가기
컴퓨터과학[4-1]/정보톰신망

정보 통신망 - [제4장] 데이터 통신의 기능

by boolean 2017. 2. 13.
728x90

정보 통신망 - [제4장] 데이터 통신의 기능

개요

컴퓨터 통신망에서 컴퓨터 상호간의 통신은 다양한 통신 기능을 통해 이루어진다. 수많은

컴퓨터로 이루어진 컴퓨터 통신망은 다양한 장비들로 구성되어 있고, 이들 장비 간에는 서

로 간의 호환성을 유지하며 통신을 수행한다. 통신 기능 또한 컴퓨터 통신망의 각 구성 요

소에 따라 다소 기능적인 면이 달라질 수는 있지만 컴퓨터 상호간의 통신을 위한 기본 기능

을 개념 위주로 살펴보면 실제 통신이 이루어지기까지 필요한 다양한 통신 기능과 역할을

파악할 수 있다. 이 장에서는 통신의 기본 기능으로서 오류제어, 흐름제어, 혼잡제어, 라우

팅 등을 살펴볼 것이다. 즉, 두 컴퓨터 사이에 전달되는 데이터가 올바른지를 파악해야 하

고, 데이터 전송 시에 특정 중간 영역에 많은 데이터가 집중하여 정체되면 이를 피해 전송

하는 방법이 요구되며, 또한 목적지까지 데이터가 도달되는 동안 중간 경유 정보를 이용해

야 한다. 이러한 통신 기능을 이해함으로써 컴퓨터 통신망 전반에 관한 개념과 구조를 파악

하는 데 도움이 될 것이다.

4.1 동기화

■ 동기화의 역할

- 송·수신자가 동일한 속도로 데이터를 전송하고 수신하는지에 관한 문제를 다룸.

- 잘못된 동기에 의한 오류 발생의 실례(교재 4.1 그림 4.1 참조)

■ 송·수신지국 사이의 비트 동기화 방법

- 동기식 전송 : 송신지국과 수신지국이 서로 독립적인 클록을 갖는 상태에서 비트 동기를

수행

- 비동기식 전송 : 한 지국만이 클록을 갖고 다른 하나는 그 클록을 이용하여 비트 동기를

수행

- 시작-정지(start-stop) 방식 : 송신지국의 클록은 시작신호에 의해서 시작되고, 몇 비트

의 동기전송 후에는 정지신호를 보내 전송을 멈추게 함. 그리고 수신지국이 다음 시작신호

에 대해 준비하게 하는 방식

4.2 주소지정

■ 주소지정의 역할

- 컴퓨터 통신망은 많은 사용자가 공유하므로 각 사용자(혹은 컴퓨터, 노드)를 고유하게

식별하는 방법이 필요

- 모든 통신지국이 서로 간에 전용 링크를 갖고 있으면 주소지정은 필요치 않음. 그러나

컴퓨터 통신망은 통신자원을 포함한 수많은 네트워크 자원을 공유하도록 설계되었으므로 반

드시 주소지정이 필요

■ 주소지정방식(교재 4.2 그림 4.2 참조)

■ 주소구조

- 일반적으로 노드 컴퓨터 주소, 주 컴퓨터 주소, 프로세스 주소 순으로 구성될 수 있음(교

재 4.2 그림 4.4 참조).

- 인터넷의 논리주소와 물리주소의 구조(교재 4.2 그림 4.5 참조)

■ 주소지정방식의 기준

- 계층구조에서 계층의 수

- 부 네트워크에 의해 제공되는 주소와 관련된 서비스의 종류

- 같은 주소를 갖는 지국의 수

- 주소할당 모드

■ 지국이 갖는 주소의 수에 따른 분류

- 단일주소지정 : 하나의 지국이 하나의 주소를 갖는 경우

- 다중주소지정 : 하나의 지국이 여러 개의 주소를 갖는 경우

4.3. 오류제어

4.3.1 오류와 오류제어

■ 오류의 의미

- 컴퓨터 통신망에서 송신측에서 보낸 데이터와 수신측에서 받은 데이터는 형태가 같아야

하며 보낸 데이터와 받은 데이터 사이에는 차이가 없어야 하는데, 차이가 발생한다면 이를

오류가 있다고 함.

- 오류율로 표현되는 RER(Residual Error Rate)는 오류로 전달된 비트 수와 전송된 전체

비트 수와의 비율로 측정

- 하나의 비트에서 오류가 발생하는 경우를 단일 비트 오류라고 하며, 연속된 여러 비트에

걸쳐서 발생하는 오류를 폭주오류라고 함.

■ 오류제어

- 잡음, 고장 등의 영향에 대비하여 RER를 주어진 한계 이내로 유지하도록 하는 통신 기

- 오류제어는 독자적으로 수행되지 않고 보통 흐름제어와 함께 수행

■ 오류제어방식

- 전진오류정정(forward error correction) : 송신측이 전송할 프레임에 부가적인 정보를

첨가하여 전송하고, 수신측이 이 정보를 활용하여 오류를 검출하고 오류를 유추하는 방식

- 후진오류정정(backward error correction) : 수신측이 오류를 검출할 수 있는 부가적인

정보를 송신측이 전송할 프레임에 첨가시켜 전송하고, 오류검출 시에 재전송을 요구하는 방

4.3.2 오류검출방식

■ 오류검출방식에는 패리티 검사, 검사합, 순환잉여검사 방식이 있음.

■ 패리티 검사

- 각 문자의 비트 수를 검사하여 패리티 비트를 포함한 전체 비트에서 ‘1’의 개수가 홀수

(odd parity)나 짝수(even parity)가 되도록 패리티 비트(parity bit)라는 1개의 비트를 추

가해 주는 방식

- 단순 패리티 검사 : 전송문자마다 패리티 비트를 첨가하고 오류를 검사(교재 4.3.2 그림

4.6 참조)

- 2차원 패리티 검사 : 단순 패리티 검사는 오류가 발생한 비트의 개수가 짝수일 때는 오

류를 검출할 수 없음. 이를 보완한 2차원 패리티 검사는 블록 단위로 끊어 동일한 열 위치

에 대해서도 패리티 비트를 추가하여 검사하는 방식(교재 4.3.2 그림 4.7 참조)

■ 검사합

- 패리티 검사보다 좀더 명확한 오류검출을 제공. 실례로 TCP와 UDP 헤더 내에 검사합

필드가 있음. 전송과정 중에 헤더 내용이 바뀌었는지를 검사

- 검사합은 검사합 생성기와 검사합 검사기인 두 가지 과정으로 이루어짐. 검사합 생성기

는 송신측에서 사용, 전송할 데이터에 덧붙여지는 추가 데이터를 생성함. 검사합 검사기는

수신측에서 사용, 전송받은 데이터에 오류가 있는지를 검출

- 검사합 생성기에 의한 검사합 생성과정(교재 4.3.2 그림 4.9 참조)

① 전송할 데이터를 n비트 단위의 세그먼트로 나눔.

② 각각의 세그먼트를 모두 더해 전체 합을 구함[※ 전체합의 계산과정 중에 캐리비트가 발

생할 수 있는데(이 캐리를 순환 캐리라고 함), 순환 캐리는 버리지 않고 전체 합과 합쳐

짐].

③ 전체 합의 1의 보수연산을 이용하여 보수화하여 검사합을 만듦.

④ 전송할 데이터의 끝에 덧붙여서 수신측으로 전송

- 검사합 검출기에 의한 오류검출과정(교재 4.3.2 그림 4.10 참조)

① 수신측은 송신측이 전송한 n비트 단위의 세그먼트들과 검사합으로 이루어진 비트열을

수신함.

② 세그먼트들과 검사합을 모두 합하여 전체 합을 만듦.

③ 전체 합에 대한 1의 보수화 방식으로 보수화시킴.

④ 보수화 결과가 0이 아니면 전송과정 중에 데이터가 손상되어 오류가 발생했음을 의미함.

이 경우 수신측은 전송받은 데이터를 거절함. 만일 결과가 0이면 오류가 없음을 의미

■ 순환잉여검사

- 메시지가 문자 단위가 아닌 이진수의 조합에 의한 연속적인 데이터로 구성되어 있는 경

우 문자 단위로 구분하기가 매우 힘들어 패리티 검사방식을 적용하기 힘듦(예 : SDLC,

HDLC 프로토콜과 같이 블록 단위로 메시지가 전달되는 경우).

- 프레임의 실제 내용에 의해 계산되는 FCS(Frame Check Sequence)를 프레임의 끝에 추

가하여 전송

- 순환잉여검사 과정[교재 4.2.4 (3) 참조]

① 전송 비트에 대한 다항식 표현 : 전송 데이터를 M(X)로 표현

② 생성 다항식에 의한 부호화 : 생성다항식 G(X)를 선택하고, M(X)를 G(X)로 곱하여 M′

(X)를 생성. M′(X)를 G(X)로 나누어 줌.

⦁생성다항식 G(X)는 M(X)의 비트 수보다 적어야 하며, 일반적으로 CRC-12, CRC-16,

CRC-CCITT 등이 사용

⦁나눗셈 연산의 과정 중에 사용되는 논리연산은 모듈로-2(modulo-2) 연산임, 모듈로-2

연산에 의한 덧셈과 뺄셈의 결과는 서로 같으며, 배타적 논리합의 연산 결과와 동일

③ 전송 비트와 나머지의 전송 : ②의 결과로 산출되는 나머지 R(X)를 이용하여 F(X)=M′

(X)+R(X)를 수신측으로 전송

④ 오류검출 : 수신측은 전송받은 F(X)를 생성다항식 G(X)로 나누어 나머지가 0이면 오류

가 없는 것으로 판단하며, 그렇지 않으면 오류가 있는 것으로 판단

4.3.3 귀환오류제어

■ 역방향 채널을 이용하는 오류검출방법을 귀환오류제어(feedback error control)라고 함.

■ 귀환오류제어 방식으로는 결정귀환(decision feedback), 정보귀환(information

feedback), 복합귀환(combined feedback) 등이 있음.

■ 결정귀환

- 수신지국에서 오류 여부를 결정함. 오류가 있을 경우에는 수신지국이 데이터 블록의 재

전송을 요구하고, 오류가 없을 경우에는 다음 블록을 보낼 것을 송신지국에 요구

- 데이터 블록은 전방향 채널로 전송되고, 반면 수신지국으로부터의 명령어는 역방향 채널

로 전송됨. 이 방식을 ARQ(Automatic Repetition Request) 방법이라고 함.

- ARQ를 이용한 오류제어절차에 대한 예(교재 4.3.3 표 4.1 참조)

■ 정보귀환

- 전송된 블록이 재전송되어야 할지 혹은 다음 블록이 전송되어야 할지에 대한 판단을 송

신지국이 결정

- 정보귀환의 예(교재 4.3.3 표 4.2 참조)

■ 복합귀환

- 결정귀환과 정보귀환 방법을 혼합한 방식. 결정귀환과 전진오류정정(FEC)을 결합한 방

식, 오류정정 코드와 결정귀환을 조합한 방식 등이 있음.

■ 오류제어방법의 분류(교재 4.3.3 그림 4.12 참조)

- 오류제어방법 중에 AR■ 방식이 가장 많이 사용되고 있으며, 대표적인 ARQ 방식으로

정지-대기(stop-and-wait) ARQ, 연속적 ARQ, 적응적 ARQ가 있음.

▪정지-대기 ARQ

- 송신측은 1개의 데이터 프레임을 수신측에 송신하고, 수신측에서는 수신된 프레임의 오

류 유무를 판단해서 송신측으로 ACK 또는 REJ를 전송

- 송신측은 일정 시간이 경과할 때까지 응답 프레임[ACK(긍정응답) 혹은 REJ(거절)]을

수신하지 못할 경우 해당 프레임을 재전송

- 구현 방법은 단순하나 송신측이 ACK를 수신할 때 까지 다음 프레임을 전송할 수 없으므

로 전송효율이 저하되는 단점이 있음.

▪연속적 ARQ

▸N-프레임 후퇴(Go-back-N) ARQ

- 정지-대기 ARQ의 단점을 보완한 방법으로 연속적으로 프레임을 전송하는 방식

- 슬라이딩 윈도우(sliding window) 개념을 사용. 즉, 송신측이 윈도우 크기만큼의 프레임

들에 순서번호를 부여하여 연속적으로 전송

- 송신측 슬라이딩 윈도우(교재 4.3.3 그림 4.13 참조) : 슬라이딩 윈도우 내의 프레임을

한꺼번에 보낼 수 있음.

- 수신측은 1개 크기의 윈도우를 갖고 있고, 다음에 받기 원하는 순서번호를 유지함. 원하

는 수신번호의 프레임을 받지 못하면 REJ를 송신측에 전송하여 오류사실을 알려줌. 그러면

송신측은 송신측 윈도우 내의 확인 응답되지 않은 모든 프레임을 연속적으로 재전송

▸선택적 반복(Selective-repeat) ARQ

- 연속적으로 프레임을 전송하는 방식으로, N-프레임 후퇴 ARQ 방식과 유사하지만 REJ

에 해당하는 프레임만을 재전송하도록 하여 N-프레임 후퇴 ARQ에 비해 전송효율이 높음.

- 송·수신측 모두 동일한 크기의 슬라이딩 윈도우를 유지

▪적응적 ARQ

- 전송효율을 최대한 높이기 위해 프레임의 길이를 동적으로 변경시킬 수 있는 방식

- 수신측은 통신회선의 오류발생률을 감지하여 송신측에 알려주고, 송신측은 이 정보를 활

용하여 적절한 프레임 길이를 결정하여 프레임을 전송

- 전송효율을 높일 수 있으나 구현이 매우 복잡

4.3.4 전진오류정정

■ 수신측에서 오류를 검출할 뿐만 아니라 수정까지 할 수 있는 방식을 전진오류정정

(Forward Error Correction, FEC)이라고 함.

- 데이터 프레임에 오류정정을 위한 잉여 비트를 만들고, 이것을 이용하여 오류검출뿐 아

니라 오류정정까지 수행

- 대표적인 방식으로 해밍(Hamming) 코드, 리드-뮬러(Reed-Muller) 코드, 리드-솔로몬

(Reed-Solomon) 코드 등이 있음.

4.4 흐름제어와 혼잡제어

4.4.1 내용, 정의 및 상호 관계

■ 목적

- 통신 기능 중에 흐름제어(flow control), 혼잡제어(congestion control), 라우팅(routing)

은 수행 기능에 따라 일부 겹치는 기능이 있으나, 트래픽이 폭주할 때나 선로와 노드의 고

장과 같은 부 네트워크의 내부 환경이 변하더라도 통신망의 성능을 일정하게 유지해야 하는

동일한 목적이 있음.

■ 부 네트워크에 혼잡이 발생한다면 부 네트워크 내에서 패킷 개수가 증가되며, 이때 부

네트워크에서 전송할 수 있는 패킷 개수의 한계를 초과함. 버퍼에 들어갈 공간이 더 이상

없으면 과부하 상태에 이르게 되고, 결국 부 네트워크의 전송 기능을 저하(교재 4.4.1 그림

4.14 참조)

■ 흐름제어, 혼잡제어, 라우팅의 구분(교재 4.4.1 표 4.3 참조)

4.4.2 흐름제어

■ 흐름제어의 목적

- 송신측에서 발생되는 블록의 개수와 통신매체, 그리고 수신측에 들어오는 블록의 개수

등을 조절하는 데 목적이 있음.

■ 기본적인 방법

- 전송 블록의 발생속도를 제한하는 것이며, 주요 기준으로 부 네트워크의 내부 상태 또는

노느나 지국 간의 상태, 그리고 통신매체의 외부 상태 등이 고려됨.

■ 흐름제어의 네 가지 원칙

- 속도조절 : 블록 간의 도착시간 간격을 바꿈으로써 속도를 조절

- 거부 : 수신측은 블록 수신을 거부하거나 또는 블록을 받아들일 수 없음을 송신측에 통

- 단일승낙 : 계속적인 거부가 진행되다가 거부 해제를 알리기 위해 블록 전송의 승낙을

취하는 것. 송신측은 승낙이 수신측으로부터 올 때까지 기다리다가 승낙을 받으면 전송을

개시

- 다중승낙 : 매 승낙마다 미리 약속된 개수의 블록만을 전송하거나 혹은 승낙마다 블록의

개수를 다시 결정하여 동적으로 블록을 전송시키는 방식. 다중승낙의 일반적인 예가 슬라이

딩 윈도우 방법임.

4.4.3 혼잡제어

■ 발생상황

- 부 네트워크로 들어오는 패킷 개수(평균 개수)가 예상 통신부하보다 클 때 발생(즉, 짧

은 시간 내에 패킷이 급격하게 증가하여 과도한 트래픽이 발생한 경우)

- 이 경우에 혼잡현상을 일으켜 패킷의 전송속도가 급격히 격감되거나 최악의 경우 패킷을

아예 전송하지 못하는 현상이 발생(교재 4.4.3 그림 4.16 참조)

■ 혼잡제어의 목적

- 혼잡의 발생 조건을 미리 알고 있다가 혼잡 발생 조건에 다다르면 혼잡이 발생하지 않도

록 제어하는 데 목적이 있음.

■ 혼잡의 종류

- 전체 혼잡 : 전체 부 네트워크와 연관된 혼잡

- 국부 혼잡 : 여러 개의 특정 노드들에만 연관된 혼잡

- 노드 혼잡 : 하나의 노드에만 연관된 혼잡

- 버퍼 오버플로우 : 버퍼와 연관된 혼잡

네 가지 혼잡 중 부 네트워크와 관련된 혼잡인 전체 혼잡과 국부 혼잡이 최우선적으로 회피

되어야 하며, 노드 혼잡과 버퍼 오버플로우는 흐름제어의 역할로 봄.

■ 혼잡제어 메커니즘 : 허가증(permission) 메커니즘

- 허가증(permit)에 기반하여 각 허가증마다 패킷이 하나씩 부 네트워크로 들어가도록 허

용. 부 네트워크 내의 허가증 개수가 부 네트워크에 존재할 수 있는 최대 패킷 개수를 결정

- 허가증은 패킷과 함께 부 네트워크를 돌아다니거나 혹은 재분배 알고리즘에 의해 적절히

분배

4.5 라우팅

4.5.1 개요

■ 라우팅(routing)은 출발 노드에서 목적 노드까지의 경로 상에 있는 출력선로나 이웃하는

다음 노드를 알아내어 전송 블록이 궁극적으로 목적 노드로 전달되도록 해 주는 기능

■ 라우팅의 목적

- 성능(performance) 최적화 또는 규정된 경계조건의 유지(예를 들면, 평균 패킷 전송시간

의 최소화, 부 네트워크 자원 이용의 최대화)

- 전체 부 네트워크 또는 부 네트워크 일부와 관련된 혼잡의 방지

- 부 네트워크의 신뢰도 증대

■ 라우팅 테이블(routing table)

- 라우팅 벡터는 전송 블록이 목적 노드로 가기 위해 거쳐야 할 이웃 노드를 목적 노드별

로 열거한 정보를 갖고 있음.

- 목적 노드별로 하나의 라우팅 벡터로 표현되며, 모든 목적 노드의 라우팅 벡터를 갖고

있는 표를 라우팅 테이블이라고 함(교재 4.5.1 그림 4.18 참조).

- 라우팅 테이블을 이용한 라우팅은 라우팅 테이블로부터 목적 노드를 검색하는 기능과 라

우팅 벡터의 값을 갱신하는 기능으로 이루어짐. 라우팅 벡터의 갱신은 동적 환경에 기반

■ 라우팅 방법의 분류(교재 4.5.1 그림 4.19 참조)

4.5.2 라우팅 방법

■ 비적응적 라우팅

- 랜덤(random) 라우팅

① 부 네트워크의 설계 상태를 고려하지 않고 임의로 다음 노드를 선택하는 방법으로, 모든

출력경로가 동등한 확률로 선택될 수 있음.

- 플러딩(flooding) 라우팅

① 각 노드에서 부 네트워크로 전송된 블록의 사본을 만든 후에 블록이 들어온 방향을 제외

한 모든 방향으로 각 사본이 전송되는 방식

② 들어온 방향을 제외한 모든 방향으로 전송 블록의 사본이 전송되므로 매우 큰 내부 트래

픽을 유발시킬 수 있으므로 특별한 경우에만 사용

- 고정(fixed) 라우팅

① 비적응적 라우팅의 대표적 방법

② 단일 경로 혹은 다중 경로를 경로로서 가질 수 있지만, 이웃 노드가 일단 결정되면 트래

픽이 변하거나 부 네트워크의 형태가 변경되더라도 이미 설정된 경로는 바뀌지 않음.

■ 적응적 라우팅

- 부 네트워크에 관한 정보(하나의 노드와 그 이웃 노드 간에 연관된 모든 정보)를 활용하

여, 매 순간마다 상태 정보를 평가하고 최적 경로를 계산하여 라우팅 벡터를 갱신하는 방법

임.

- 비적응적 라우팅보다 구현이 훨씬 복잡

- 부 네트워크의 상태 정보의 처리방법, 라우팅 벡터의 계산위치, 부 네트워크의 범위 등에

따라 여러 가지의 적응적 라우팅 방법이 있음.

① 국부적 라우팅

⦁하나의 노드가 얻을 수 있는 부 네트워크의 상태 정보에 근거하여 라우팅 벡터의 값을 계

⦁부 네트워크의 상태 정보는 자신의 노드 자체만을 위해 사용하는 것으로, 다른 노드로 전

송되지 않아 다른 노드의 라우팅 벡터 값 계산에 영향을 끼치지 않음.

⦁가장 짧은 큐 라우팅(shortest queue routing) 방법과 국부지연평가(local delay

estimate) 방법이 있음.

② 분산형 라우팅

⦁이웃 노드 간에 라우팅 정보를 교환하여 두 이웃 노드 간에 최소 전송시간을 갖도록 최소

지연 벡터를 갱신하는 방법

⦁최소 지연 벡터는 이웃 노드 간에 주기적으로 교환

⦁이 방법의 대표적인 예로 초창기의 ARPANET을 들 수 있음.

③ 델타 라우팅

⦁국부적 라우팅과 분산형 라우팅 방법을 결합하여 서로 간의 장점을 활용한 라우팅 방법

④ 중앙집중형 라우팅

⦁네트워크 라우팅 센터(Network Routing Center, NRC)가 중앙에 존재하여 NRC에서 적응

적 라우팅에 관한 대부분의 기능을 수행하는 방법

⦁모든 노드는 라우팅에 관한 정보를 NRC로 보내며, NRC는 들어온 정보를 처리하여 라우

팅 벡터를 계산한 후 갱신된 라우팅 벡터를 각 노드로 보냄.

⦁라우팅 과정이 고정 라우팅에서처럼 간단해질 수 있으나, NRC는 수신 블록에서 라우팅

정보를 어떻게 추출해야 하는지와 이전 라우팅 벡터를 새로운 라우팅 벡터로 어떻게 대치해

야 하는지를 알고 있어야 함.

객관식 문제

1. 다음 설명 중 가장 올바른 것은?

① 인터넷에서 사용되는 논리주소의 전체 길이는 32비트이며 주로 TCP에 의해서 사용된다.

② 한 지국만이 클록을 갖고 다른 하나는 그 클록을 이용하여 비트 동기를 수행하는 방법을

동기식 전송이라고 한다.

③ 두 지국이 서로 독립적인 각자의 클록을 갖는 상태에서 비트 동기를 수행하는 방법을 비

동기식 전송이라고 한다.

④ MAC 주소는 콜론에 의해 8비트 단위로 구별되며 전체 주소는 48비트인 물리주소이다.

2. 다음은 오류와 오류제어에 관한 설명이다. 옳지 않은 것은?

① 전진오류정정 방식은 송신측이 전송할 프레임에 부가적인 정보를 첨가하여 전송함으로써

수신측이 오류를 검출할 뿐만 아니라 정확한 정보를 유추할 수 있다.

② 하나의 비트에서 오류가 발생하는 경우를 단일 비트 오류라고 하며, 연속된 여러 비트에

걸쳐서 발생하는 오류를 다중오류라고 한다.

③ 오류율로 표현되는 REF(Residual Error Rate)는 오류로 전달된 비트 수와 전송된 전체

비트 수와의 비율로 측정한다.

④ 후진오류정정 방식은 오류검출을 하는 데 사용되는 기술과 재전송 방식을 수행하기 위한

알고리즘으로 나뉜다.

※ (3∼4) 패리티를 이용하는 데이터 전송에서 다음 그림과 같이 문자 4개를 전송하는 데

b7이 패리티 비트이다. 물음에 답하라.


3. 홀수 패리티를 이용하는 경우, ㉮, ㉯, ㉰, ㉱를 순서대로 적은 것은?

① 0 1 0 1 ② 0 1 1 1 ③ 1 0 1 0 ④ 1 1 1 0

4. 짝수 패리티를 이용하는 LRC 8비트를 ⓐ, ⓑ, ..., ⓗ 순으로 적은 것은?

① 1 1 0 1 0 0 1 0 ② 0 1 0 1 0 0 1 0 ③ 0 0 1 0 1 1 0 1 ④ 1 0 1 0 1

1 0 1

5. 오류검출방식의 하나인 순환잉여검사(Cyclic Redundancy Check)에 대한 설명으로 올바

른 것은?

① 메시지가 문자단위로 구성되어 있을 때 각 문자에 관하여 2진 논리에 따르는 다항식을

사용하는 순환잉여검사를 사용한다.

② 수신측에서는 메시지 다항식 F(X)를 받아 생성다항식 G(X)로 나누어 나머지가 1이면

오류가 없는 것으로 판정한다.

③ 일반적으로 많이 사용하는 생성다항식 중 하나인 CRC12는

문자가 8비트인 경우에 사

용되며, 특히 패킷 교환망에서 이용된다.

④ 전송할 데이터가 ASCII 코드로 0001011이라고 할 때 전송 비트에 대한 다항식 M(X)는

X3+X+1로 표현할 수 있다.

6. 괄호 안의 알맞은 오류제어방식은?

송신지국과 수신지국 사이에 전방향 채널(forward channel) 외에 역방향 채널(backward

channel)이 존재한다면, 간단하고 경제적인 방법으로 오류를 제어할 수 있다. 역방향 채널

을 이용하는 모든 오류검출방법은 ( )이라/라고 한다.

① 순환잉여검사(cyclic redundancy check) ② 귀환오류제어(feedback error

control)

③ 전진오류정정(forward error correction) ④ 후진오류정정(backward error

correction)

7. 오류제어에 관련된 서술 중 옳은 것은?

① 복합귀환방법은 결정귀환과 정보귀환을 혼합하여 효율성이 높지만 복잡성이 다소 증대된

다.

② 귀환오류제어 방법은 오류 검출 방법으로서 오류의 결정위치에 따라 결정귀환, 정보귀

환, 복합귀환 등의 방법으로 분류할 수 있다.

③ 결정귀환은 오류가 있을 경우 송신지국에서 수신지국에게 직접 해당 데이터 블록을 재전

송해 준다.

④ 정보귀환은 오류가 있을 때 수신지국에서 송신지국에게 해당 데이터 블록의 재전송을 요

청한다.

8. 다음 중 결정귀환방법에 속하는 것은?

① echo 검사 방법 ② Hamming 코드를 이용하는 방법

③ 선택적 반복(Selective-repeat) ARQ ④ FEC 방법

9. 귀환방법은 오류에 대한 결정위치에 따라 분류된다. 다음 그림과 관련이 있는 귀환방법

은?


① 결정귀환, ARQ ② 복합귀환, 루프 체크

③ 정보귀환, ARQ ④ 정보귀환, 루프 체크

10. ARQ 방식과 관련된 서술 중 옳은 것은?

① 정지-대기 ARQ 방식은 구현방법이 단순하고, 수신측 내에 최대 프레임 크기의 버퍼를

1개만 사용하여도 된다.

② 연속적 ARQ 방식에는 N-프레임 후퇴 ARQ와 선택적 반복 ARQ의 두 종류가 있다.

③ 한 번에 한 프레임을 송신하는 정지-대기 ARQ 방식과 달리 연속적 ARQ 방식은 프레

임 길이를 동적으로 변경시키는 방식이다.

④ 적응적 ARQ 방식은 오류 체크 필드를 이용하여 오류를 제어하는 정보귀환방법으로서

프레임의 길이를 변경시킴으로써 전송효율을 높일 수 있다.

11. 다음은 어떤 경로선택방법을 설명한 것인가?

이 방법은 부 네트워크의 설계 상태를 고려하지 않고 임의의 다음 노드를

선택한다. 모든 경로들은 할당된 확률을 갖는다. 부 네트워크 내에서의 블록

움직임에 대해서는 루프(loop)가 금지되며 부 네트워크 상태에 대한 정보가

효과 있게 널리 유포되어 있을 경우에 이 경로 선택방법이 유용하다.


① 랜덤 라우팅(random routing) ② 분산형 라우팅(distributed routing)

③ 플러딩 라우팅(flooding routing) ④ 델타 라우팅(delta routing)

12. 송신측의 송신속도와 수신측의 수신속도가 다를 때 요구되는 통신 기능은?

① 라우팅 기능 ② 오류제어 기능 ③ 동기화 기능 ④ 흐름제어 기능

13. 윈도우 방법을 이용하는 흐름제어와 관계가 깊은 것은?

① 거부의 원칙 ② 다중승낙의 원칙 ③ 속도조절의 원칙 ④ 단일승낙의 원칙

14. 다음 중 적응적 라우팅 방법이 아닌 것은?

① 분산형 라우팅(distributed routing) ② 델타 라우팅(delta routing)

③ 플러딩 라우팅(flooding routing) ④ 핫-포테이토 라우팅(hot potato

routing)

15. 다음은 어떤 라우팅 방법을 설명한 것인가?

라우팅 정보가 이웃하는 노드에서만 교환된다는 사실을 이용한 적응적 라우팅 방법 중 하나

로서, 대표적인 보기로는 초창기의 ARPANET에서 찾아볼 수 있다.

① 분산형 라우팅(distributed routing) ② 델타 라우팅(delta routing)

③ 랜덤 라우팅(random routing) ④ 플러딩 라우팅(flooding routing)

심화학습문제

16. 국부적 라우팅(local routing) 방법의 설명이 아닌 것은?

① 하나의 고립된 노드가 얻을 수 있는 부 네트워크의 상태에 관한 정보에 근거를 둔다.

② 국부적 라우팅(local routing) 방법에는 핫-포테이토 라우팅(hot potato routing)과 국부

지연 평가(local delay estimate) 방법이 있다.

③ 부 네트워크의 상태 정보의 처리방법, 라우팅 벡터의 계산위치, 부 네트워크의 범위 등

에 따라 여러 가지의 적응적 라우팅 방법이 있다.

④ 국부적 라우팅(local routing)은 네트워크 라우팅 센터(Network Routing Center, NRC)

가 존재한다.

17. 다음 중 혼잡의 종류와 의미를 설명한 것이다. 다음 중 올바르게 연결되지 않은 것은?

① 국부 혼잡-부 네트워크에서 통신부하와 전송분배를 변화시킨다.

② 버퍼 오버플로우-여러 버퍼들에만 연관될 수 있다.

③ 노드 혼잡-단지 한 노드와 관계할 수도 있다.

④ 전체 혼잡-전체 부 네트워크와 연관될 수도 있다.

18. 라우팅의 목적으로 가장 관련이 적은 것은?

① 전송오류의 검출 및 정정 ② 부 네트워크의 신뢰도 증대

③ 평균 패킷 전송시간의 최소화 ④ 전체 부 네트워크와 관련된 혼잡의 방지

해설 및 정답

1. 물리주소는 콜론(:)에 의해 8비트 단위로 구별되며 전체 길이는 48비트임. 논리주소는 8

비트 단위로 구별되며 전체 길이는 32비트임[교재 4.2 참조].

정답 ④

2. 하나의 비트에서 오류가 발생하는 경우를 단일 비트 오류라고 하며, 연속된 여러 비트에

걸쳐서 발생하는 오류를 폭주오류라고 함[교재 4.3.1 참조].

정답 ②

3. 홀수 패리티는 패리티 비트까지 포함하여 전체 비트에서 ‘1’의 개수가 홀수 개가 되도록

패리티 비트를 생성하여 추가하는 방식임. ㉮, ㉯, ㉰의 경우, 1의 개수를 세면 각각 4개씩

이므로 홀수 개가 되려면 각각의 패리티 비트는 1이어야 함. ㉱의 경우, 1의 개수가 홀수

개이므로 그대로 홀수 개가 되려면 패리티 비트는 0이어야 함.[교재 4.3.2 (1) 참조]

정답 ④

4. 2차원 패리티 검사 방식에서 LRC(Longitudinal Redundancy Check)를 세로중복검사라고

함. 즉, 하나의 문자 단위가 아닌 문자들의 블록에서 세로축(열)을 기준으로 패리티 비트를

추가하여 검사하는 방식임. 짝수 패리티이므로 동일 세로축의 비트를 대상으로 1의 개수가

패리티 비트까지 포함하여 짝수 개가 되도록 패리티 비트를 생성함. b6의 경우 1의 개수가

홀수 개가 되므로 짝수 개가 되기 위해서는 패리티 비트로 1의 값을 가져야 함[교재 4.3.2

그림 4.7 참조].

정답 ①

5. 순환잉여검사는 2진수의 연속적인 데이터에 대해 오류검출을 하고자 할 때 유용하며, 송

신측에서는 나머지 R(X)를 M′(X)에 더한 F(X)를 전송하고 수신측에서는 이를 생성다항식

G(X)로 나누어 나머지가 0이면 오류가 없는 것으로 판정함. CRC-12는 문자가 6비트인 경

우에 사용됨. 순환잉여검사에서 다항식은 다음과 같이

M(X)=b6·X6+b5·X5+b4·X4+b3·X3+b2·X2+b1·X1+b0·X0(전송 비트의 길이를 7로 가정)로 표현

됨[교재 4.3.2 (3) 참조].

정답 ④

6. 역방향 채널을 이용하는 오류검출방법은 귀환오류제어라고 하며 결정귀환, 정보귀환, 복

합귀환 등이 있음[교재 4.3.3 참조].

정답 ②

7. 복합귀환방법은 결정귀환과 정보귀환을 혼합한 방법으로 두 방법에 비해 효율성이 낮고

복잡성이 다소 증대됨[교재 4.3.3 참조].

정답 ②

8. 결정귀환은 수신지국에서 오류의 유무를 결정함. 오류가 있을 경우에는 수신지국이 데이

터 블록의 재전송을 요구하는 방식임. 결정귀환에는 정지-대기 ARQ, 연속적 ARQ로서 N프레임

후퇴 ARQ와 선택적 반복 ARQ, 그리고 적응적 ARQ가 있음[교재 4.3.3 (4) 참조].

정답 ③

9. 결정귀환에 관한 그림임. 또한 데이터 블록은 전방향 채널로 전송되고, 반면에 수신지국

의 명령어는 역방향 채널로 전송되는데, 이 방법을 ARQ라고 함[교재 4.3.3 그림 4.11(a)

참조].

정답 ①

10. 정지-대기 ARQ에서 송신측은 1개의 데이터 프레임을 수신측에 송신하고, 수신측에서

는 수신된 프레임의 오류 유무를 판단하여 송신측으로 ACK 또는 REJ를 전송함. 송신측 내

에 최대 프레임의 크기의 버퍼를 1개 사용하는데, 일정 시간이 경과할 때까지 응답 프레임

을 수신하지 못할 경우에 프레임을 재전송하기 위함. 프레임의 길이를 동적으로 변경시킬

수 있는 방식은 적응적 ARQ임. 연속적 ARQ 방식으로 N-프레임 후퇴 ARQ와 선택적 반복

ARQ가 있음[교재 4.3.3 (4) 참조].

정답 ②

11. 랜덤 라우팅(random routing) 방법임[교재 4.5.2 참조].

정답 ①

12. 흐름제어는 전송 블록의 발생 속도를 제한하는 것임. 즉, 송신측의 송신속도와 수신측

의 수신속도가 서로 다를 때 송·수신측 간에 속도조절을 목적으로 함[교재 4.4.2 참조].

정답 ④

13. 흐름제어의 네 가지 원칙으로 속도조절, 거부, 단일승낙, 다중승낙이 있음. 다중승낙은

매 승낙마다 미리 약속된 개수의 블록만을 전송하거나 혹은 승낙마다 블록의 개수를 다시

결정하여 동적으로 전송시키는 방식으로, 슬라이딩 윈도우 방법이 대표적인 예임[교재

4.4.2 (1) 참조].

정답 ②

14. 비적응적 라우팅 방법으로는 임의 라우팅, 플러딩 라우팅, 고정 라우팅이 있음[교재

4.5.2 (1) 참조]. 비적응적 라우팅 방법으로는 국부적 라우팅, 분산형 라우팅, 델타 라우팅,

중앙집중형 라우팅이 있음. 핫-포테이토 라우팅은 국부적 라우팅 방법 중 하나로 가장 짧

은 큐 라우팅(shortest queue routing)이라고 함[교재 4.5.2 (2) 참조].

정답 ③

15. 분산형 라우팅은 라우팅 정보가 이웃하는 노드에서만 교환된다는 사실을 이용한 적응적

라우팅 방법 중 하나로서, 대표적인 보기로는 초창기의 ARPANET에서 찾아볼 수 있음[교

재 4.5.2 (2) 참조].

정답 ①

16. 네트워크 라우팅 센터(Network Routing Center, NRC)는 중앙집중형 라우팅

(centralized routing)에 존재함[교재 4.5.2 (2) 참조].

정답 ④

17. 국부혼잡은 단지 특정 노드들에만 연관될 수 있음. 부 네트워크에서 통신부하와 전송분

배를 변화시키는 것은 적응적 라우팅 방법임. 혼잡의 종류로 전체 혼잡, 국부 혼잡, 노드

혼잡, 버퍼 오버플로우가 있음. [교재 4.4.3 참조].

정답 ①

18. 라우팅의 목적으로는 성능의 최적화를 위해 평균 패킷 전송시간의 최소화, 부 네트워크

자원 이용의 최대화 등이 있으며, 전체 부 네트워크 혹은 일부 부 네트워크와 관련된 혼잡

의 방지에 있음. 아울러 부 네트워크의 신뢰도를 증대시키는 데에도 그 목적이 있음[교재

4.5.1 참조].

정답 ①

댓글