9 장 상호 연결 네트워크

제 9 장  컴퓨터 네트워크

ꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏ

9.1	개 요

9.2	데이터의 전송

9.3	컴퓨터 네트워크

9.4	근거리 네트워크(LAN)

9.5   원거리 네트워크(WAN)

9.6	상호연결 네트워크

ꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏꠏ

○ 컴퓨터의 네트워크의 응용

― 중요한 문제

경제성, 표준화, 신뢰성

○ 개 요

9 장 상호 연결 네트워크

그림 9-1 : 상호연결 네트워크(interconnection network)의 구성

컴퓨터 노드들,	하드웨어 및 소프트웨어 인터페이스

― 상호연결 네트워크, 네트워크/통신 서브넷(communication subnets)

― 노드(nodes), 엔드 시스템(end systems)/호스트(hosts)

그림 9-1.  일반적인 상호연결 네트워크의 구성

― 상호연결 네트워크들의 구분

∙LAN(local area network): 수백 대의 컴퓨터들을 연결하며 거리는 수 킬로미터까지이다.

∙MAN(metropolitan area network): 도시 지역 단위의 네트워크로서 LAN을 발전시켜 하나의 도시를 단일 네트워크로 연결한 것

∙WAN(wide area network): 장거리 네트워크(long haul network)라고도 하며 전 세계에 분산되어 있는 컴퓨터들을 연결

― 상호연결(internetworking): 두 개 이상의 네트워크를 연결한 것이며, 이 상호연결은 한 네트워크에서 다른 네트워크로 데이터를 변환하는 소프트웨어 표준들에 의하여 실현

○ 데이터의 전송

― 원거리 통신의 일반적 방법: 송신측(transmitting end)에서 병렬 데이터를 직렬 데이터	형식으로 변환하고 수신측(receiving end)에서 다시 직렬 데이터 형식을 병렬 데이터로 변환

● 전송 회선

디지털 데이터에 적합한 가장 간단한 전송선 배열 : 전류 루프

송신기 : 간단한 ON/OFF 교환기

(a) Data transmission using a current loop

(b) Noise current

(c) Optical coupler

그림 9-2.  전류 루프를 사용한 원거리 장치의 연결

― 모뎀(modem, Modulator-DEModulators)

0과 1의 논리 값을 회선의 전송 대역 내의 주파수를 갖는 신호로 변환 및 복원하는 기능을 수행하며, 회선의 양단에 설치

―흔히, 주파수 이동 변조(FSK, frequency-shift keying)를 사용.

적절한 주파수를 선택하여 단일 회선에 각 방향으로 두 개의 채널을 설정하는 목적으로 흔히 사용되는 방법인데, 두 채널은 각각 서로 다른 방향으로의 전송에 사용됨

	Frequency, Hz
Login state	0 (space)	1 (mark)
Channel 1	1075	1275
Channel 2	2025	2225

그림 9-3.  전용선에서 주파수-이동 변조를 이용한 컴퓨터 장치의 원거리 연결

● 전송 형식

직렬 전송과 병렬 전송,	비동기 전송과 동기 전송

[1] 직렬 전송과 병렬 전송

― 직렬 전송:	송신측과 수신측 장비들 간에 하나의 전송 선로만이 존재하며	한 순간에 한 비트의 데이터만이 전송되는 방식

― 병렬 전송:	송신측과 수신측 장비들 간에 여러 개의 전송 선로가 존재	하며, 따라서 한 순간에 여러 비트의 데이터가 전송되는 방식

(a) 직렬전송

(b) 병렬전송

그림 9-4  직렬 전송과 병렬 전송

[2] 동기 전송과 비동기 전송

(1) 비동기식 전송

송신측에서 데이터를 전송할 때 짧은 시간 동안 몇 비트만	을 연속적으로 전송하고 일정한 중지 시간을 두는 과정을	반복하는 방식으로 송신측과 수신측의 클럭에 약간의 오차	가 있는 경우에도 수신측 클럭이 송신측 클럭과 많이 벗어	나기 전에 중지 시간이 시작되므로 동기 문제를 해결

(a) 문자의 전송형태

(b) 두 문자의 전송 예

그림 9-5.  비동기 전송

― 비동기 전송 방식을 이용하면서, 여러 문자를 하나의 단위로 하는 새로운 차원의 동기를 지원할 수도 있다. 이러한 방식을 프레임(frame) 동기라 함

― 예: “Computer Network”을 전송한다면, 데이터의 첫 문자(‘C’) 이전에 STX(start-of-text) 문자를 전	송하고 데이터의 마지막 문자(‘k’) 다음에  ETX(end-of-text) 문자를 전송하는 방식

(a) 문자 데이터 전송

(b) 2 진 데이터 전송

그림 9-6.  프레임 동기에 의한 데이터 전송

(2) 동기 전송

동기 전송에서는 데이터를 전송할 때 시작 비트나 중지 비트를 전송할 필요가 없다. 송신측과 수신측의 클럭 동기를 맞추는 방법은 다음과 같다.

① 송신측과 수신측 간에 클럭 신호를 전송하는 별도의 선을 제공하는 방법과

② 송신측에서 전송할 데이터를 전송에 알맞은 형태로 코딩(coding)할 때, 데이터 내에 클럭 정보를 함께 삽입하여 전송하는 방법 등이다.

― 프레임을 구성하는 방식:	비트 지향 방식과 문자 지향 방식

(a) 문자 지향 전송시의 프레임

(b) 비트 지향 전송시의 프레임

그림 9-7.  동기 전송 방식

― 동기 전송 방식은 전송되는 각 비트에 대하여 동기 신호가 함께 전송되므로 수신측에서 비트에 대한 동기를 항상 유지할 수 있다. 전송 오버헤드가 적으므로 고속의 데이터 전송에 많이 사용된다. 비동기 전송 방식에 비하여 많은 비용을 필요로 한다.

[3] 데이터의 전송 방향

일반적으로, 데이터의 전송 방향에 따른 형식에는 다음과 같은 3가지 형태가 있다.

(1) 단방향(simplex) 전송은  한 방향으로의 전송만이 가능하다. 예로는 일반 TV를 들 수 있다.

(2) 반이중(half duplex, HDX) 전송은 양 방향전송이 가능하지만, 두 시스템이 교대적으로 한 순간에는 한 방향으로만 전송이 가능하다. Fax,무전기

(3) 전이중(full duplex, FDX) 전송은  동시에 양 방향 전송이 가능하다. 예로는 전화를 들 수 있다.

● 표준 통신 인터페이스

다른 제조 회사의 컴퓨터 장치와 상호연결을 가능하게 하려면, 이들 장치들을 상호연결하는 방법을 정의한 표준이 필요

- 이러한 표준들은 인터페이스의 물리적이고 기능적 특성을 정의

예) EIA 표준 RS-232-C :	북미 이외의 지역에서는 ITU-T 권고안 V.24. 이 표준은 데이터 통신 장치(예를 들어, 모뎀)와 데이터 단말 장비(예를 들어, 그림 9-8 에서와 같은 컴퓨터나 입출력 컴퓨터 장치) 사이의 인터페이스에 대한 사양을 기술하고 있다. RS-232-C 인터페이스는 25 개의 연결점으로 구성되어	있다. 표 9-1에 각각의 연결점에 대해서 기술하였다.

그림 9-8.  RS-232-C 표준 신호 순서

● 에러 제어

원거리의 컴퓨터 장치는 통신에서 에러가 발생 가능성이 더 높으며, 에러에 대한 검출과 복구는 통신 하드웨어와 소프트웨어의 중요한 기능

[1] 전송 에러의 검출

― 패리티 비트 : 가장 간단한 에러 검출 방법

문자마다 하나의 패리티 비트를 첨가하여 홀수/짝수 패리티를 만들 수 있다. 7-비트 문자 b6b5 … b0 에 대해, 짝수 패리티 비트P 는 8번째 비트로 전송된다. 짝수 패리티P는 다음과 같다.

P = b6 ⊕ b5 ⊕ ‥‥ ⊕ b0

― 에러 검색 :

수직 중복 검사(vertical redundancy checking : VRC)

세로 중복 검사(longitudinal redundancy checking : LRC)

― VRC와 LRC 는 그림 9-9 과 같이 에러 검색 수준을 개선하	기 위해 결합하여 사용할 수 있다.

그림 9-9.  VRC 와 LRC 패리티 검사법의 사용

― 순환 중복 검사(cyclic redundancy checking : CRC) 기법 :

강력하면서 일반적으로 사용되는 방법

[2] 전송 에러의 복구 절차

― 전송 에러의 복구의 다음 두 방법

(1) 전방 에러 수정 (forward error correction : FEC)

충분히 중복 수신을 하여 수신측이 수신한 비트에서 에러가 발생했을 때도 전송된 메시지를 재구성할 수 있도록 한 방법

(2) 자동 반복 요청 (automatic repeat request : ARQ)

에러 검출 개재를 사용하여 에러를 감지했을 때 재전송을 요청하는 방법

― 중지-대기 프로토콜은 구현이 매우 간단하고 전이중과 반이중 회선 모두에 사용할 수 있으나, 응답을 기다리는 시간이 길어서 회선 효율이 낮은 것이 단점이다.

― 그림 9-10 은 그러한 상황을 도시한 것이다. 여기서 T 는 메시지 전송 시간이고 W 는 다음 메시지를 전송할 때까지의 대기 시간이다. 따라서, 메시지 전송은 가용 시간의 [eqn: rm T over T+W] 동안만 이루어진다. 더욱이, P 를 메시지의 에러 발생률이라고 할 때, 단지 전송된 메시지 수의 1-P 배만 정확히 수신된다. 나머지 메시지들은 에러 때문에 수신측에서 제거된다. 따라선, 전송 효율 요소 η를 다음과 같이 정의할 수 있다.

[eqn: rm η= T over T+W (1 - P)]	식(9.1)

― 전송 속도를 초당 v 비트, 메시지의 길이가 n 비트라면,

[eqn: rm η= {n`/`v} over {n`/`v +W} `(1 - P)]	식(9.2)

― 대기 시간 W  :(그림 9-10 참조) 3 가지 요소

- round-trip 전파 지연

- 두 번 전송 방향을 바꾸는데 소요되는 시간

- 응답 메시지의 전송 시간

예) 공중전화 네트워크에서 4800 bps 통신 회선의 경우 전파지연은 100미터 당 4㎳ 정도이다. 반환(turnaround) 시간은 매우 가변적인데 150 ㎳ 로 가정하면, 응답 메시지의 전송 시간은 메시지의 문자 수에 대한 함수가 된다. 응답 메시지는 단지 몇 개의 문자만을 전송하기 때문에, 전송 시간은 거의 무시할 수 있을 만큼 짧다. 300 미터의 회선을 가정하면, 대기 시간은 다음과 같다.

W = 2×(4×3+150) = 324 ㎳

― 에러 확률 P ?

메시지 길이 n 의 함수이다. n이 10～104비트의 범위에	있을 때, 4800 bps 회선에서 P 의 값은 대략	[eqn: rm P = `0.15 `times `10^-4 ~n]

그림 9-10.  대기시간의 3 가지 구성 요소

1000 비트 길이의 메시지에 대해, η는 다음과 같이 계산된다.

[eqn: rm η~=~ {1000 `times`( 1 - 0.015)} over {1000 + 0.324 times 4800}~=~0.39]

― 이러한 상황하에서 전송 효율은 0.39×4800 = 1870 bps가 된다. P가 1보다 매우 작은 값을 갖는 메시지 길이에 대해서, 메시지 길이를 늘리면 전송 효율이 개선된다.

― 연속-ARQ 방식은 전이중 방식. 몇 가지 세부 사항

(1)메시지들은 해당 응답이 있을 때까지 메모리 버퍼에 보관된다.

(2)메시지들과 이들의 응답에 번호 매김을 하여 에러 없이 전송된 메시지가 재전송 되지 않도록 해야 한다.

● 전송 매체

(a) 트위스트 페어

(b) 동축 케이블

(c) 광섬유

그림 9-11.  네트웍의 3 가지 매체

표 9-2. 전송 매체의 비교

표 9-3.  베이스밴드와 브로드밴드 전송 방식의 비교

○ 컴퓨터 네트워크

컴퓨터와 컴퓨터, 그리고 입출력 장치를 원거리에 설치할 수 있으면 컴퓨터 시스템의 효율을 상당히 개선하며, 실제로 불가능했던 응용들을 가능하게 한다.

(1) 원거리 컴퓨터 사용자는 편리한 곳에 자신의 컴퓨터 장치를 설치하고 이를 통해 컴퓨터 시스템에 접근하므로 컴퓨터와 컴퓨터 장치간의 데이터 전달을 위한 통신 기능이 필요하다.

(2) 컴퓨터 간 통신, 즉 한 컴퓨터에서 다른 컴퓨터로의 데이터 전달이 필요하다.

― 네트워크의 필요 :

● 단순 네트워크

메시지(message) : 상호연결 네트워크를 통하여 컴퓨터들 사이에 전송되는 정보

그림 9-12.  두 컴퓨터를 연결한 단순 네트워크

그림 9-13.  메시지 형식의 한 예

[1] 메시지 송수신 절차

― 메시지를 송신 절차

(1) 응용프로그램이 보내어야 할 데이터를 운영체제의 한 버퍼에 복제.

(2) 운영체제가 체크섬을 계산하여 메시지 안의 헤더나 트레일러에 넣은 후 타이머를 작동.

(3) 운영체제가 네트워크 인터페이스 하드웨어에 데이터를 보내면 하드웨어가 메시지를 보냄.

― 메시지 수신

(1) 시스템이 네트워크 인터페이스 하드웨어로부터 데이터를 운영체제의 버퍼로 복사.

(2) 시스템이 데이터에 대한 체크섬을 계산하여 수신측의 체크섬과 일치하면 수신측에서 송신측에 ACK 신호를 보내고 일치되지 않으면 송신측에서 관련 타이머의 시간이 다 되면 다시 메시지를 보낼 것이라 가정하여 이 메시지를 삭제한다.

(3) 데이터가 테스트를 통과하면 시스템이 이 데이터를 사용자의 주소 공간에 복사한 후 응용프로그램이 계속되도록 신호를 보낸다.

― 송신측에서는 다시 ACK 신호에 대하여 어떤 조치를 취해야 한다.

∙송신측이 ACK 신호를 받으면 시스템 버퍼로부터의 메시지 복사본을 제거시킨다.

∙대신 송신측이 시간 초과 통보를 받으면 데이터를 다시 보내고 타이머를 다시 작동시킨다.

― 여기서 잘못되었을 때, 재 전송하기 위하여 운영체제가 버퍼에	메시지를 계속 보관하는 것으로 가정하고 있는데 그림	9-14 는 메시지의 형식을 보여주고 있다.

그림 9-14.  단순 네트워크에서 메시지 형식

― 프로토콜(protocol): 컴퓨터들 사이의 통신을 위하여 소프트웨어가 따라야 할 일련의 절차를 말하며, 일반적으로 송수신 측 사이에 대칭(symmetric)이지만 절차는 역이 된다.

[2] 연결 네트워크의 성능 변수

― 그림 9-14 :	상호연결 네트워크에서 흔히 쓰이는 성능 변수들

(1) 대역폭(bandwidth) : 가장 흔히 쓰이는 용어로 일단 메시지가 네트워크에 들어갔을 때 상호연결 네트워크가 정보를 전달할 수 있는 최대 속도를 가리킨다. 계산 단위는 MByte/sec가 아니라 MBit/sec이다. 또 처리율(throughput)이라는 용어는 한 응용 프로그램에 배치된 네트워크 대역폭을 나타낼 때 쓰이는 수가 있다.

(2) 전송 시간(transmission time) : 메시지가 네트워크를 통하여 전달되는 시간으로 메시지의 크기를 대역폭으로 나눈 것이다.

(3) 이동시간(time of flight): 메시지의 첫 비트가 수신 측에 도달하는데 걸리는 시간으로 리피터(repeater)나 네트워크 중의 다른 하드웨어로 인한 지연 시간도 포함되어 있으며 WAN 인 경우 단위가 밀리초 이며 MPP 인 경우 나노초(㎱)이다.

(4) 전송 지연 시간(transport latency) : 이동시간과 전송 시간의 합으로 메시지가 상호연결 네트워크에서 소비한 시간이다.

(5) 송신측 오버헤드(sender overhead) : 프로세서가 메시지를 상호연결 네트워크에 넘기는 데 걸리는 시간으로 하드웨어와 소프트웨어 구성 요소들이 모두 포함되어 있다.

(6) 수신측 오버헤드(receiver overhead) : 프로세서가 메시지를 상호연결 네트워크에서 꺼내는 시간으로 하드웨어/ 소프트웨어 구성 요소들이 모두 포함되어 있다. 일반적으로 송신측 오버헤드보다 수신측 오버헤드가 더 큰데, 예를 들면 수신측은 인터럽트의 대가를 치러야 한다.

[3] 컴퓨터와 연결

― 네트워크의 어디에 컴퓨터를 연결하느냐와 관련된 네트워크,	인터페이스, 하드웨어와 소프트웨어의 문제들

- 메모리 버스 사용여부

- 입출력 버스 사용 여부

- 폴링(polling)할 것인가

- 인터럽트를 이용할 것인가,

- 어떻게 운영 체제의 실행을 피할 것인가 하는 문제

***MPP(massive parallel processor)는 메모리 버스에 연결

***LAN 과 WAN 은 입출력 버스에 연결

― 네트워크 연결 위치는 하드웨어는 물론 네트워크의 소프트웨어 인터페이스에 심각한 영향을 미치는데, 핵심은 인터페이스가 프로세서의 캐쉬와 일관성

― 메모리 버스가 입출력 버스보다 더 나은 캐쉬 일관성

― 메시지를 송신하기 위하여 프로그램 식의 입출력 버스/ DMA를 쓰느냐?	메시지 길이가 길면 DMA가 최선이지만 짧은 메시지들을 보내기 위하여 DMA를 쓸 것인가 하는 문제는 DMA의 인터페이스 효율이 관건

● 전송 매체

― 컴퓨터들은 연결하는 가장 간단한 방법 :

컴퓨터들이 한 상호연결 전송 매체를 공유하도록 하는 것

― 이더넷(ethernet) LAN :

수백 대의 컴퓨터가 공유할 수 있는 하나의 버스

― 공중 전송 매체(shared medium)의 사용을 조정하는 메커니즘

네트워크가 소규모일 때 : 중앙의 중재기(central arbiter)

― 많은 수의 노드들이 수 킬로미터 떨어져 있는 네트워크 :

반송파 센싱과 충돌검출(carrier sensing and collision	detection)

― 교환기(switch)에 전용선을 갖도록 하는 것

모든 목적지에 이르는 전용회선을 번갈아 가면서 제공

종합 대역폭(aggregate bandwidth)은 단일 공중 전송 매체	의 대역폭의 3-4배

(a) 공중 매체(이더넷)

(b) 교환 매체(ATM)

그림 9-15.  공중 전송 매체와 교환기

● 교환기 위상(switch topology)

(a) 크로스바 교환기

(b) 오메가 네트워크

(c) 오메가 네트워크내의 교환기 box 구성도

그림 9-16.  8 개의 노드를 가진 일반적인 교환기 위상

― 크로스바(crossbar) 위상 :

상호연결 네트워크의 한 경로를 통하여 한 노드가 다른 어	떤 노드와도 통신할 수 있게 하며

― 오메가(Omega) 위상 :

크로스바 교환기보다 적은 하드웨어를 쓰지만(n/2 * log2n	과 n2개의 교환기), 통신 형태에 따라 메시지들 사이에 경합(블럭킹(blocking))이 일어날 가능성이 더 많다

― 팻트리(fat tree) 위상 :

통상의 통신 패턴 요건을 충족시키기 위하여 대역폭을 높인	트리를 이용

그림 9-17.  16 개 노드를 가진  팻트리 위상

그림 9-18은 한 네트워크에서 낮은 비용으로 상호 연결하는 한 방식을 보여주고 있는데 이를 링(ring)이라 부른다. 공중 회선과는 달리 링은 많은 동시 전송을 할 수 있는 데,	메시지가 평균적으로 n/2 개의 교환기들을 경유해야 하기	때문에 그렇게 좋은 위상은 아니다(여기서 n 은 노드들의	숫자). 링은 마치 파이프 라인식의 버스와 같이 장점은 점대점 링크이며 약점은 버스 리피터(bus repeater)지연이다.

그림 9-18.  링 네트워크의 위상

그림 9-19 : MPP를 위한 3 가지 일반적인 위상

(a) 16 개 노드의 2차원 그리드(메쉬)

(b) 16 개 노드들의 2차원 토러스(torus)

(b) 16 개 노드들의 하이퍼 큐브 트리 (16=24, 따라서 n=4)

그림 9-19.  상용 MPP의 일반적 네트워크 위상들

○ 근거리 네트워크(LAN)

― 컴퓨터 네트워크의 일종으로 지리적으로 작은 지역에 제한되는 네트워크

― 초기에 공장지대, 대학, 사무실 등의 컴퓨터와 컴퓨터 장치, 디지털 컴퓨터들을 상호연결하는 네트워크로 정의

● 이더넷(CSMA/CD) 버스

― 이더넷 버스 액세스 프로토콜 또는 CSMA/CD(carrier sense multiple access with collision detection) 프로토콜로 버스	형 구조에서 사용되며, 일반적으로 이더넷(ethernet)이라고도 한다.

― 모든 컴퓨터들은 버스라고 불리는 하나의 전송 매체에 연결되어 있으며 전송매체는 컴퓨터들에 의하여 공유된다. 부착된 컴퓨터가 전송할 데이터를 가지면, 버스를 검사하여 다른 컴퓨터에 의하여 사용 중인 경우에는 이 사용이 끝날	때까지 데이터 전송을 연기한다.

(a) 구성 예

(b) 데이터 충돌의 예

그림 9-20.  CSMA/CD 방식 LAN 의 구성 및 동작

● 토큰 링(token ring)

― 공유하고 있는 통신회선에 대한 제어신호(토큰)을 각 노드 간	에 순차적으로 옮겨가면서 수행하는 방식

― 루프를 초기화하고 토큰 패스를 개시하기 위한 제어

― 토큰의 분실, 중복을 검출하고 회복하는 기능 제어

― 일반적으로  4 Mbps 이하의 속도에서 사용

그림 9-21.  토큰 링 방식  LAN 의 구성 예

●  토큰 버스

― 논리적으로 링을 구성

노드의 신규 참여와 제거에 따라 논리적 링의 보수를 위한	프로토콜이 필요

― LAN 동작은 토큰 링과 매우 유사

그림 9-22.  토큰 버스 방식 LAN 의 구성의 예

○ 원거리 네트워크(WAN)

― 지리적으로 멀리 떨어진 곳에 위치하는 컴퓨터와 장치들 사이	에 데이터를 전송할 수 있는 서비스를 제공하는 네트워크

― 회선 교환 방식과 패킷 교환 방식

● 원거리 연결

컴퓨터와 컴퓨터 장치가 상당히 멀리 떨어져있을 때, 합리적인 방법은 송신측(transmitting end)에서 병렬 데이터를 직렬 데이터 형식으로 변환하고 수신측(receiving end)에서 다시 직렬 데이터 형식을 병렬 데이터로 변환하는 것이다.

● 다중 연결

― 3 가지 가능한 구성

성형 구성, 멀티포인트 라인, 루프 구성(그림 9-23)

(a) Star configuration

(b) Multipoint line

(c) Loop configuration

그림 9-23.  원거리 컴퓨터 장치의 연결

[1] 성형 구성

― 가장 단순한 구성, 연결들은 전용 전송 라인들이거나 다이얼식 전화네트워크의 일부이다.

― 컴퓨터 장치의 수가 매우 많을 때, 다중화 장치를 통해 라인들	을 컴퓨터에 연결하는 것은 많은 이점이 있다.

― 컴퓨터는 데이터 문자와 라인 주소를 다중화 장치에 보내고	다중화 장치는 문자를 해당 컴퓨터 장치로 전송한다.

[2] 멀티포인트 회선

― 멀티포인트(multipoint) 또는 멀티 단말(multidrop) 회선이라 불리는 것으로 다수의 컴퓨터 장치를 단일 전송 회선으로 연결

― 멀티포인트 회선은 일반적으로 전이중 방식이므로, 컴퓨터는 어떤 한 순간에 하나 이상의 컴퓨터 장치에 전송을 할 수 있고 하나의 컴퓨터 장치로부터 수신을 할 수 있다.

― 제어 체계(프로토콜)는 다음 두 가지 기능을 반드시 포함하	여야한다.

(1) 각 컴퓨터 장치의 주소 지정

(2) 전송 회선의 사용에 대한 스케줄링

(1) 컴퓨터 단말 장치의 주소 지정

― 컴퓨터가 메시지를 전송할 때, 메시지를 수신할 컴퓨터 장치를	선택할 수 있도록  메시지에 앞서 컴퓨터 장치의 주소를 먼	저 전송함으로써 해결할 수 있다.

― 라인에 연결된 모든 장치들이 메시지의 주소와 데이터 부분을	명확하게 구분할 수 있는 프로토콜이 요구된다.

(1) ASCII 데이터 연결 제어 프로토콜

― 점대점과 멀티포인트 연결을 위한 동기식 전송 연결에 사용된다. 이 프로토콜은 주소 제어, 그리고 데이터를 7 또는 8 비트 문자로 전송한다. 8-비트 코드는 일반적으로 표준 7-비	트 코드와 여기에 추가된 하나의 패리티 비트로 구성된다.

그림 9-24.  일반적인 ASCII 메시지

(2) 고수준 데이터 연결 제어(high-level data link control : HDLC) 프로토콜

― ASCII 체계의 단점을 보완한 프로토콜이다. 약간 변형된 프로토콜들로 SDLC (synchronous data link control), ADCCP (advanced data communication control procedure), LAP (link-access protocol)와 같은 프로토콜도 있다.

―  HDLC의 두 가지 기본 적인 특징

① 전송 단위가 가변 길이의 문자다.

② 플래그라 부르는 유일한 하나의 8-비트 조합을 구분자로 사용한다. 이 유일한 플래그는 사용자가 인식하지 못하는 방법으로 제공된다.

그림 9-25.  고수준 데이터 링크 프로토콜

[3] 루프 구조

― 루프 구조와 멀티포인트 회선 연결의 차이점 :	루프는 루프 접속기에 연결된 개개의 점대점 연결들로 구성	되어 있다는 것

― 루프 상에서의 전달은 항상 한가지 방향(시계 방향 또는 반시계 방향)으로 진행. 따라서, 모든 회선은 단방향 방식으로 동작.

[4] 다중화

― 고속 회선이 사용되며, 다중화된 데이터의 전달 기법

(1) 주파수 분할 다중화(frequency division multiplexing : FDM)

― 고속 회선의 전송 주파수 대역은 n 개의 주파수 채널로 나눌	수 있다.

― 각 컴퓨터 장치의 회선 신호는 이들 채널에 맞추기 위해 주파수 이동을 하는 과정을 변조(modulation)라 한다. 역 과정은	복조(demodulation)라 하는데, 수신측에서 이루어진다. 이 방법에서는 주소에 대한 정보가 필요 없는 데, 그 이유는 각 컴퓨터 장치들은 그들이 차지하고 있는 주파수 채널에 의해 구분되기 때문.

(2) 동기식 시분할 다중화(synchronous time division multiplexing : STDM)

― 고속 회선에서 하나의 문자를 전송하는 시간이 저속 회선에서	문자를  전송하는 시간의 1/n 보다 작아야 한다.

― 다중화기는 구속 회선들을 연속적으로 접속하는 교환기로 구성된다. 회선1 의 한 문자가 전송되고 이어서 회선2, 회선3 등의 순서로 문자가 전송되고 회선n 에 도달하면 다시 회선1 부터 반복한다(이 과정을 "스캔"이라고 부른다.). 수신측이 각 회선의 데이터를 구별할 수 있도록 하는 특수한 프레임 문자는 보통 회선1 의 문자를 전송하기 전에 전송된다. 프레임 문자 다음에 오는 첫 번째 문자는 회선1 의 문자가 되고 두 번째 문자는 회선2 의 문자가 된다. 최종 전송 형식은 그림 9-26 와 같다.

그림 9-26.  STDM의 전송 형식

그림 9-27.  STDM 소스 회선을 위한 이중 버퍼 배열

― 원거리 컴퓨터 장치들이 동시에 모두 바쁜 경우는 거의 없다. 컴퓨터 장치 동작은 오랜 비활동 기간을 갖는다. 따라서, 상당한 부분의 STDM의 시간 단락들과 FDM의 채널들의 용	량이 낭비된다.

● 교환 방식

[1] 전송 방식

―유선 통신:	전용 회선 이용 방식/교환 회선 이용 방식

― 공중 네트워크(public network)사용 시, N 사용자를 전용선으로 연결하기 위해서는 N(N-1)/2 개의 회선이 필요하며, 각 전화기들은 (N-1)개의 연결 포트(port)를 갖아야 한다.

― 공중 네트워크를 구성할 때는 일반적으로 그림 9-28과 같이	교환 회선을 이용한다.

― 라우팅(routing) :	네트워크에서 송신처의 호스트 장치에 도달하기까지의 경로를 선택하는 것

그림 9-28.  공중 통신 네트워크의 구성 예

― 교환 회선을 이용하는 방식:	회선 교환 방식/패킷 교환 방식

[2] 라우팅(routing)

― 교환 전송 매체는 3 가지 라우팅 방식

소스 중심의 라우팅(source-based routing)

가상 회선(virtual circuit)

목적지 중심의 라우팅(destination based routing)

- 결정적 방식

- 적응 방식(무작위 라우팅(randomized	routing))

― WAN 의 교환기의 라우팅 :

보관 후 전달(store and forward)방식

컷 스루(cut through) 또는 웜홀(wormhole) 라우팅(MPP	네트워크)

● 패킷 교환

― 사용자가 전송하는  데이터가 패킷 단위로 만들어져서 전송

― 송신측과 수신측 사이에 고정적 물리적인 연결 아님

― 하나의 물리적인 전송 매체상에 여러 사용자의 패킷이 동시에	전송 가능

그림 9-30.  패킷 교환 방식의 예(데이터그램)

― 패킷 교환 방식

데이터그램(datagram) 방식

가상회선(virtual circuit)방식

○ 상호연결 네트워크

― 상호연결 네트워크란 네트워크와 네트워크를 연결하는 것

예) LAN 사용자가 WAN을 통하여 연결된 다른 LAN 사용자와	데이터를 주고 받는 것이 상호연결 네트워크

● 고려 사항

상호연결 네트워크의 중요한 고려 사항

[1] 네트워크 계층의 서비스

―LAN 의 경우는 전송 에러율이 낮고 전송 지연 시간이 짧은 특징을 가지므로 일반적으로 비연결형 데이터 전송 기능을 제공.

― WAN 의 경우는 전송 에러율이 높고 전송 지연 시간이 긴 특징을 가지므로 네트워크에서 안정적인 데이터 전송을 지원하는 연결형 데이터 전송 서비스를 지원하는 것이 일반적

― 인터넷은 WAN 과 LAN 등이 혼합되어 있게 되므로 인터넷의 네트워크 계층에서 지원하는 서비스를 연결형으로 할 것인가 또는 비연결형으로 할 것인가를 고려해야 함.

[2] 프로토콜

인터네트워킹을 이루는 네트워크들에서 사용하는 프로토콜 구조는 각 네트워크에 따라서 다양하다. 각 네트워크들의 프로토콜은 네트워크의 특성에 적합하도록 만들어져 동작하므로, 인터네트워킹을 위하여 이들 프로토콜을 하나로 통합하는 방안은 많은 문제를 갖는다. 따라서 인터넷에서는 일반적으로 각 네트워크의 프로토콜 계층 구조를 그대로 유지하고, 그 상위에 인터넷 상에서 공통적으로 동작하는 프로토콜을 두는 방안이 유용한 방안이다.

[3] 주소

― 인터넷을 구성하는 각 네트워크는 각기 독립적인 주소 구조

예) LAN  : DTE 들은 MAC 주소에 의하여 구분

X.25 네트워크 : DTE 들이 X.121(PSPDN 에서 주소 구조의	ITU-T 표준안)에 따른 주소

* NPA(network point of attachment address):	각 네트워크에 독립적인 주소

― 인터넷 주소:	인터넷에서	공통적인 주소 구조는 네트워크 계층과 트랜스포트 계층 사이의 NSAP(network service access point) 주소로 이루어짐

[4] 라우팅

사용자가 하나의 네트워크 내에서 데이터를 주고 받는 경우 사용자는 NPA 주소를 이용할 수 있으며, 각 네트워크에서는 각기 독립적인 방식으로 패킷을 라우팅한다. 인터네트워킹이 이루어지더라도 각 네트워크의 독립적인 NPA 주소와 라우팅 방식은 그대로 유지될 수 있어야 함

― 인터네트워킹 상에서 데이터를 주고 받는 사용자는 NPA 주소 대신에 인터넷에 공통적인 주소를 이용하여야 함

― 네트워크 내에서는 NPA 주소가 사용되고, 네트워크와 네트워크를 연결하는 IS에서 NPA 주소와 인터넷 주소를 매핑하는 방식이 유용한 방안

[5] 패킷의 크기

인터네트워킹을 이루는 각 네트워크에서 지원하는 최대 패킷의 크기가 다르므로 인터네트워킹 상의 패킷 크기를 결정하는 것은 어려운 문제

― 패킷 크기에 영향을 미치는 요소 :

1) 네트워크의 전송 에러율이 높은 경우 패킷의 크기가 작아야 종단에서 패킷이 에러 없이 수신될 가능성이 커진다.

2) 패킷의 크기가 커지면 패킷을 중계하는 장치의	버퍼(메모리)가 커져야 하며, 또한 패킷을 중계할 때 다른 패킷이 기다리게 되는 시간이 증가한다.

3) 패킷의 크기가 작아지면 하나의 사용자 데이터가 여러 개의 패킷으로 나뉘어서 전송되어야 하며 결국, 더 많은 처리를 필요로 하게 된다.

[6] 흐름 제어 및 혼잡 제어(flow control and congestion control)

― 흐름 제어: 송신측과 수신측의 속도 차이를 극복할 수 있는 방안이다.	수신측의 최대 수신 속도가 송신측의 전송 속도에 미치지 못할 경우, 수신측에서는 송신측의 데이터 전송 속도를 제어할 수 있어야 한다.

― 혼잡 제어:	네트워크 측면에서의 흐름 제어이다. 즉, 네트워크로 들어오는 패킷의 수가 네트워크에서 나가는 패킷의 수 이상으로 많아지면 네트워크가 혼잡 상태가 되어 네트워크 내의 패킷 전송 속도가 크게 떨어지게 된다. 이러한 문제를 극복할 수	있는 방안이 혼잡 제어이다.

― 인터넷 상에서 공통적으로 동작하는 프로토콜은 연결된 전체 네트워크의 혼잡을 효율적으로 제어할 수 있어야 한다.

● 인터넷 프로토콜(IP)

― IP(internet protocol)는 일반적으로 TCP/IP라고 하는 프로토콜 계층 구조를 갖으며 OSI-7 계층 구조의 네트워크 계층에 해당

― 인터넷 네트워크 계층은 네트워크에 종속적인 부분, 네트워크에 종속적인 부분을 통하여 IP 계층에 동일한 서비스를 지원하는 계층, 그리고 IP 계층 등으로 이루어짐

- 그림 9-31 : 인터넷 프로토콜 계층 구조의 예

두 개의 서브넷(subnet)이 있고, 각 서브넷은 고유한 프로토	콜 및 주소 구조를 갖는다. 이 서브넷을 연결시키는	IS(intermediate system)가 하나 있는 것으로 가정

그림 9-31.  인터넷의 프로토콜 구조

[1] 서비스

― IP 계층에서는 비연결형 데이터 전송 기능을 제공

― IP 계층에서 제공하는 서비스와 그에 따른 파라미터(표 9-5)

표 9-5.  IP 계층의 서비스와 파라미터

서비스	파라미터
Send	송신주소, 수신 주소, 상위 프로토콜, QOS, 구분자, 프래그먼트 금지 지시자, 생존시간, 데이터 길이, 옵션 데이터, 데이터
Deliver	송신 주소, 수신 주소, 상위 프로토콜, QOS, 구분자, 데이터 길이, 옵션 데이터, 데이터

[2] 주소

― NPA 주소는 각 네트워크에 종속적인 주소이며, IP 주소는 인터넷 상에서 유일한 주소이다. IP 의 주소는 기본적으로 32 비트이며, 인터넷 상의 서브넷을 지칭하는 부분(subnet-id)과 서브넷 상의 호스트를 지칭하는 부분(host-id)으로 나뉜다.

― 서브넷은 각기 특징에 따라서 호스트를 많이 갖는 경우와 그렇지 않은 경우가 있을 수 있다.

― 호스트를 많이 갖는 서브넷은 호스트 번호를 위하여 많은 비트를 할당하여야 하며, 호스트를 적게 갖는 서브넷은 호스트 번호를 위한 비트 수가 작아도 된다.

― 인터넷 주소는 그림 9-32 과 같이 3 개의 클래스로	나누어짐

그림 9-32.  인터넷 주소 구조

― 클래스 A 형의 주소 : ARPANET 과 같이 하나의 네트워크	내에 연결된 호스트가 많은 네트워크에 배치

― 클래스 C 형의 주소 : LAN 과 같이 연결된 호스트가 적은 경	우에 배치된다.

― 호스트 번호(host-id)가 0 인 주소는, 호스트를 나타내지 않고 서브넷을 지칭할 때 사용된다. 또한 호스트 번호부분의 모든 비트가 1인 주소는 해당 서브넷에 연결된 모든 호스트를 지칭한다. 그리고 호스트 번호와 서브넷 번호의 모든 비트가 1 인 주소는 인터넷 상의 모든 호스트를 나타낸다.

― 인터넷 주소 표현:

- 점으로 분리된 10 진법 이용

인터넷 주소를 각기 8 비트 단위로 나누어 각 단위를 10진수로 표시하고, 나누어진 각 단위의 사이에 점을 찍는 방식

예) 인터넷 주소 “11001010 11101101 10110001 11000000”은	202.237.177.192 로 표시된다.

- 의미를 갖는 문자들로 구성된 주소

예) 위의 인터넷 주소는 "smuc.sangmyung.ac.kr" 이라고 표현

― 번호로 구성된 인터넷 주소는 IP에서 해석하여 처리하고, 문자로 구성된 인터넷 주소에 대한 서비스는 TCP 계층 상위의 응용 계층에서 처리

― 인터넷 주소의 기본 개념은 서브넷 하나에 하나의 네트워크 번호(net-id)를 할당하는 방식이나 네트워크들이 많아지면서 하나의 서브넷 내에 또 다시 여러 개의 네트워크들이 연결되는 구조로 확장되는 경우가 발생한다. 이 경우, 서브넷은 인터넷 외부에서 볼 때는 하나의 네트워크로 보이지만, 그 내부에서는 여러 개의 네트워크로 구성된다.

― 그림 9-33  : 서브넷의 예. 이 예에서는 인터넷 외부에서는 128.10.×.×(클래스 B)의 단일 네트워크로 보이는 서브넷 내부가 또 다시 128.10.1.× 네트워크와 128.10.2.× 네트워크로 구성되었다.

그림 9-33.  하나의 서브넷이 여러 개의 네트워크로 구성된 예

― 서브넷과 외부의 인터넷을 연결하는 IS 는 외부에서 들어오는 IP 패킷을 또 다시 내부의 여러 네트워크로 전송하여야 한다. 이를 위하여 그림 9-33 에서는 호스트 번호(host-id)로 사용되는 16 비트 중 8 비트를 서브넷 내의 네트워크들을 구분하는데 사용하고 실제의 호스트 번호는 나머지 8 비트로 이루어짐

―  IS에서는 주소 마스킹(address masking)을 이용하여 인터넷 주소의 어느 부분까지가 네트워크의 주소이고, 어느 부분이 호스트 주소인가를 알 수 있도록 함

[3] 프로토콜

IP 패킷의 구조

그림 9-34.  IP 패킷의 구조

그림 9-35.  인터넷의 일반적 구조

● 인터네트워킹 장비

[1] 리피터(repeater)

망의 거리를 확장할 수 있는 장비.

예) 하나의 10-BASE-2 LAN 세그먼트(segment)를 이용하여 연	결 가능한 최대 거리는 약 200 미터 정도

▶ 실제 연결하려고 하는 DTE 들이 이 이상의 거리에 분산되어 있을 경우, 몇 개의 10-BASE-2 망들을 리피터로 연결하여 전체 DTE 들을 연결할 수 있다.

― OSI 계층 구조상의 물리 계층에 해당하는 기능만을 제공

― 신호를 다시 생성

거리가 멀어짐에 따라서 나타나는 감쇄 현상을 줄이고 신호	의 품질을 좋게 하는 기능을 제공.

그림 9-36.  리피터를 이용한 LAN 의 연결

[2] CSU/DSU(channel service unit/data service unit)

― DSU : 저속으로 디지털 네트워크의 종단 점(termination  point) 기능과 신호 구조 변환 기능 등을 수행.

― CSU : 고속으로 동작하며 DSU 가 갖는 네트워크 종단 점 기능 이외에 회로 검사 기능과 에러 제어 기능 등을 수행

[3] 지능형 LAN 허브(intelligent LAN hub)

― DTE 들을 트리 구조로 연결하는데 많이 사용

― LAN 들을 연결하는 장비로도 사용 가능

그림 9-37.  허브/트리형 LAN 의 구성

LAN 허브는 3 단계로 구분

(a) 1 세대 허브

(b) 2 세대 허브

(c) 3 세대 허브

그림 9-38.  LAN 허브의 종류

― 초기의 허브(1984) : 리피터와 유사하게 동일한 타입의 LAN들을 연결할 수 있는 기능을 제공

― 2 세대 허브 : 각기 다른 타입의 LAN 들을 연결할 수 있는 기능을 제공,	단순한 수준의 네트워크 관리 기능도 제공

― 3 세대 허브 : 네트워크 관리 기능을 SNMP(simple network   management protocol) 수준으로 향상 또한 허브 내에 브리지와 라우팅 기능

― 하나의 건물 내에 지능형 허브를 이용하여 LAN  구성의 예

그림 9-39.  허브를 이용한 LAN 구성 예

[4] 브리지(bridge)

― LAN 세그먼트들을 연결할 수 있는 기능 제공

※ 리피터는 OSI 계층 구조상의 물리 계층에서 동작

브리지는 물리 계층과 MAC 계층에서 동작

그림 9-40.  브리지를 이용한 LAN 의 연결

[5] 라우터(router)

― 서로 상이한 구조를 갖는 네트워크들을 연결할 수 있는 기능

― 일반적으로 LAN 을 WAN 과 연결하는데 많이 사용

― OSI 계층 구조의 물리 계층, 링크 계층 그리고 네트워크 계층	상에서 동작

그림 9-41.  인터넷 라우터의 구조

― 네트워크 내의 혼잡 상태를 제어할 수 있는 기능

― 어떤 경로에 많은 트래픽이 있는 경우에는 패킷을 다른 경로로 전송하는 등의 기능

[6] 게이트웨이(gateway)

― 프로토콜 구조가 상이한 네트워크들을 연결할 수 있는 기능	제공

예) IBM 의 SNA 프로토콜이 동작하는 네트워크와 OSI 7 계층	모델이 동작하는 네트워크와의 연결에 사용

그림 9-42.  게이트웨이의 동작 구조

― 여러 계층의 프로토콜 변환 기능을 수행

-많은 시간 필요

-네트워크 내의 병목 현상을 일으키는 지점