connection-oriented와 connectionless, 그리고 virtual-circuit networks by honee

데이터 통신 공부중에 의문사항이 생겼다.

OSI 모델의 Transport layer에서.. connection control이란게 있다.
이것은 서로 통신을 하는 두 Transport layer사이의 connection을 control한다는 것인데,

두가지가 있다.

connection-oriented는 패킷을 전달하기 전에 connection을 만들어 놓고 통신을 하고
다 전달 했으면 connection을 끝내는 것이다.
connectionless는 connection그런거 안만들거 그냥 패킷을 독립적으로 생각해서
하나하나 맘대로(?) 보내는 거다.

CO는 매우매우매우매우 유명하신 TCP가 있고
CL은 약간 덜 유명한 UDP가 있다.



근데 문제는..

8장의 switch다.
복잡하게 연결된 여러 회선중 어느 쪽으로 보낼지 적절히 선택해 주는게 switch인데
이 switched networks(스위치를 사용하는 네트워크라고 생각하면 되겠지)의 형태가
크게 두가지(세개지만 하나는 잘안쓴다니까..)고 그중 한가지가

Packet-switched networks다.
이건 리소스가 한정되어 있으니까, 이 리소스를 공유해서 너쓰고 나쓰고 돌아가면서 쓰자는 거다.

이 Packet-switched networks는 또 두 가지가 있는데
Datagram과, Virtual-circuit이다.

Datagram은 그냥 패킷마다 독립적으로 일로도 보내고 절로도 보내고
때에 따라서 적절한 방향으로 스위치를 해준다. 따라서 4, 3, 2, 1하고 순서대로 패킷을 보내도
각 패킷마다 다른 루트로 목적지에 도착하니, 2, 3, 1, 4하고 도착할 수도 있다는 거다.

Virtual-circuit은 보내야 겠다고 생각하는 목적지까지 특정 루트를 미리 정해 놓고
고 루트로만 스위치
해서 패킷을 순서대로 보내는 거다.
그럼 보낸 순서대로 싹 도착하게 된다. 말하자면 가상의 circuit을 정해 놓고, 글로만 보내는거다.
- 여기서 가상인 이유는 남들도 회선을 공유하기 때문에 사실 물리적으로는 자기만의 회선이 아닌거다.



주마등 처럼 지나가는 Virtual-circuit....

어라............... 그럼 위의 CO는 Virtual-circuit아닌가
CL은 Datagram이고. 내용이 완전 똑같은데?

근데 스위치나 라우터에 관한 건 Transport layer가 아니라 Network layer아닌가?
안그래도 IP읽다보니 Datagram이란 말도 나오더만.




...........친절하게도 책에 나와 있다. 많은 사람이 이걸 궁금해 했나보다.

You may wonder how TCP, which uses the services of IP, a connectionless protocol, can be connection-oriented. The point is that a TCP connection is virtual, not physical.
TCP operates at s higher level. TCP uses the services of IP to deliver individual segments to the receiver, but it controls the connection itself. If a segment is lost or corrupted, it is retransmitted.

그리고 연습문제 15번에서도 이 걸 물어봤나보다. 답에서 설명하고 있다.

In circuit-switched and virtual-circuit networks, we are dealing with connections. A connection needs to be made before the data transfer can take place. In the case of a circuit-switched network, a physical connection is established during the setup phase and the is broken during the teardown phase. In the case of a virtual-circuit network, a virtual connnection is made during setup and is broken during the teardown phase; the connection is virtual, because it is an entry in the table. These two types of networks are considered connection-oriented. In the case of a datagram network no connection is made. Any time a switch in this type of network receives a packet, it consults its table for routing information. This type of network is considered a connectionless network.


오타가 있을 수도.

잊어먹고 있던게 있었던거구나..
CO인 TCP는 A의 Transport layer가 B의 Transport layer한테 연결할꺼다 하면
B는 알았다고 대답해서 연결(Connection)한다는 거다. 의미상으로..물리적인게 아니라.
따라서 TCP는 데이터를 보낸 순서대로 받는다. 회로가 형식적으로 연결되어 있으니까.

CL인 UDP는 이걸 안하고 그냥 막보내는 거고. 따라서 데이터를 보낸 순서대로 받지 않는다.


하지만 TCP와 UDP둘다 그 하위 네트워크 레이어에서 일하는 IP를 이용한다.
IP는 Datagram방식으로 데이터를 보낸다. 즉, 보낸 순서대로 받지 않는다.
그리고 TCP는 IP가 올려보내준 데이터를 보낸 순서대로 조립하게 된다.



아하!!
역시 책이 짱..


트랙백

이 글과 관련된 글 쓰기 (트랙백 보내기)
TrackbackURL : http://honeegl.egloos.com/tb/103962 [도움말]

덧글

  • Rin 2010/10/12 01:23 # 삭제 답글

    많은 도움 되었습니다 감사합니다
  • 완더걸스 2012/03/08 21:37 # 삭제 답글

    잘 봤습니다~
댓글 입력 영역