메시지 교환: 경로를 미리 설정하지 않고 메시지의 헤더에 목적지 주소를 표시해 전송하는 방식
회선 교환: 통신을 원하는 호스트가 데이터를 전송하기 전 연결 경로를 미리 설정해놓는 방식
패킷 교환: 회선교환과 메시지교환의 장점은 살리고, 단점은 최소화.
응용계층에서 end system들은 서로 message를 교환한다. 이 message는 제어기능(e.g., TCP연결요청,TCP연결응답)과 이미지,텍스트,오디오같은 데이터를 포함한다.
이러한 긴 message를 송신 end system이 packet이라는 작은 데이터 조각으로 분할한다.
이 packet들은 communication link와 packet switch를 거치게 된다.
이 packet들은 link의 최대 전송 속도로 communication link을 통해 전송된다.
e.g., If, 송신 end system 혹은 packet switch가 R bits/sec속도로 link상에 L bits의 packet을 송신
➡ packet을 전송하는 데 걸리는 시간 : L/R 초
위 그림에서 packet 1의 일부분을 전송하였고, 동시에 라우터에 도착하였다.
위 그림이 좀 더 진행되면 송신 시스템에서 라우터로 L/R초 에 packet 1개 전체를 송신, 같은 시간에 라우터에 수신되고 저장된다.
이후, 라우터는 destination으로 저장된 전체 packet을 출력하기 시작, 2L/R 기간에 전체 packet을 전송하였고 수신시스템은 수신함. 따라서 전체 지연은 2L/R초이다. (만약 저장-후-전달 방식이 아닌, 라우터에서 바로 출력했다면 L/R초일 것)
단, 3번에서 L/R 지점에서 source는 1번째 packet을 완전히 송신했으므로 2번째 packet을 router로 송신하기 시작하며, router도 1번째 packet을 완전히 수신했으므로 destination으로 송신하기 시작한다. 그리고 2번째 packet이 라우터로 도착하는 순간, 라우터도 destination으로 전송한 1번째 packet이 동시에 도착한다.
이때까지 걸리는 시간이 바로 2L/R 이다.
위 진행방식에 의해 3L/R 시간에 destination은 처음 2개의 packet을 수신하고 라우터는 3번째 packet을 수신한다.
마지막으로 4L/R 시간에 destination은 3개의 모든 packet을 수신한다.
전달 테이블(forwarding table)는 여러 특별한 라우팅 프로토콜(최단경로를 설정하는)에 의거해 만들어진다.(추후 5장에서 설명)
패킷 교환(Packet switching)
회선 교환(Circuit switching)
전통적인 전화망 방식(패킷교환방식보다 훨씬 옛날에 나왔다.)
케이블 내의 회선을 이용한다.
종단 시스템 간에 통신을 제공하기 위해 경로상에 필요한 자원(버퍼, 링크 전송률)은 통신 세션(session) 동안에 확보 또는 예약(reserve, dedicated)된다.
송신자와 수신자 간의 경로에 있는 스위치들이 해당 연결 상태를 유지해야만 하는 연결
연결이 이루어지는 동안 네트워크 링크에 일정한 전송률을 예약
주어진 전송속도(bandwidth)가 연결을 위해 예약(reserve)되므로 송신자는 수신자에게 보장된(guaranteed) 일정 전송률로 데이터를 보낼 수 있음
e.g., 만약 이웃한 스위치 간의 링크가 1Mbps의 전송속도를 갖는데, 4개의 회선스위치를 갖는다면 각 연결은 지정된 전송속도의 250kbps를 얻게됨
즉, 한번 회선을 받으면 독점적으로 사용한다(dedicated)
패킷교환은 회선 설정(call setup)이 필요없으므로 구현하기도 간단
하지만, 회선 교환은 종단간 회선을 설정하고 대역폭을 보존하는 것이 복잡하고, 경로에 있는 스위치들 사이의 운영을 조절하는 복잡한 신호 소프트 웨어가 필요