1. A closer look at network structure

  • network edge
    • 가장자리에 있는 부분
    • 랩탑, 데스크탑, 서버
  • network core
    • 중간에 있는 부분
    • 라우터
    • 네트워크 of 네트워크
  • access networks, physical media
    • 위의 구성요소들을 연결하는 링크

 

 

2. The network edge

  • end system (hosts)
    • 인터넷의 edge에 위치하고 있어, 인터넷에 연결된 컴퓨터나 다른 장비들을 end system이라고 함
    • end system들은 애플리케이션 프로그램을 host하기 때문에 host라고도 불림
    • ex) web, email
  • client/server model
    • client : 자기가 원할 때 링크에 연결해서 서버로부터 원하는 정보를 가져오는 요소
    • server : 항상 연결되어 있어서, 언제 들어올지 모르는 클라이언트의 요청을 기다리는 요소
  • peer-peer model

 

3. 인터넷에서 제공하는 통신 서비스

3.1. connection-oriented service

TCP(Transmission Control Protocol)는 connection-oriented service를 제공하는 서비스

  • TCP에서 제공하는 서비스
    • reliable, in-order byte-stream data transfer
      • 신뢰성 있고 (유실되지 않고 보낸 그대로 감), 전송한 순서를 지켜서 도착
    • flow control
      • sender가 receiver에게 전송하는데, receiver가 처리할 수 있는 속도에 따라 sender가 조절
    • congestion control
      • sender와 receiver 중간 네트워크 상황에 맞춰서 속도를 조절

 

3.2. connectionless service

UDP(User Datagram Protocol)는 connectionless service를 제공하는 서비스

  • UDP에서 제공하는 서비스
    • connectionless
    • unreliable data transfer
    • no flow control
    • no congesion control

유실되도 상관없고, 마음대로 보내고 싶을때 사용

오디오인 경우에는 조금 유실되도 상관없기 때문에 UDP 사용

즉, 신뢰성 필요없는 경우에는 udp 사용

TCP는 UDP와 다르게 제공해주는 기능이 더 많기 때문에 비용이 더 비쌈

 

protocol이란?

메세지를 전달하기 위한 약속

 

4. The network Core

데이터를 목적지 까지 전달해주는 라우터가 있음

라우터의 전달 방식 2가지

 

4.1. circuit switching

출발지에서 목적지까지 가는 길을 만들어놓고, 해당 사용자만 그 길을 사용할 수 있게 함

ex) 예전 유선전화망

 

4.2. packet switching

인터넷에서 사용하는 방식

유저가 만든 패킷을 그때그때 원하는 방향으로 전송

 

4.2.1. 장점 

각 유저당 10kb/s 를 사용한다고 하면, 해당 사진에서 circuit switching은 한번에 10명 가능

packet switching은 열려있으므로 제약이 없음

실제 사용 시간보다 데이터를 사용하는 시간이(active 상태) 적으므로(인터넷상에서 끊임없이 데이터를 요청하지 않는다는 뜻, 시간적 여유가 있음), 사용자 수의 제약 없이 사용 가능

ex) 35명의 유저가 있고, 그들의 사용시간이 10%만 active 상태라고 하면 10명 이상이 동시에 네트워크를 사용할 확률은 0.0004로 정말 낮음

 

 

단점 (만일 0.0004의 확률에 걸렸을 경우)

delay

1. processing delay

알맞은 목적지로 전달해야하는데, 목적지를 확인하는 과정에서 생기는 delay

 

2. queueing delay

패킷들을 라우터 안에 버퍼(큐)에 대기시켜 차례대로 내보냄

이때, 큐에서 기다리면서 생기는 delay

 

3. transmission delay

큐에서 나갈때 생기는 delay

첫 비트부터 마지막 비트까지 모두 전송해야하는데, 첫 비트 부터 마지막 비트까지 라우터에서 다 나갈때까지 걸리는 시간

L/R (L : packet length, R : link bandwidth)

 

4. propagation delay

마지막 비트가 링크에 올라온 순간부터 마지막 비트가 다음 라우터에 도달할때까지의 시간

단순히 어떤 비트가 전송되는 속도이며, 이는 빛의 속도

빛의 속도는 건들 수 없기에, 길이가 길면 delay도 길어짐

 

이 딜레이들을 줄이는 방법

1. processing delay

라우터의 성능을 개선

 

2. queueing delay

다이나믹한 네트워크 상황의 원인

유저의 사용량에 따라 달라지기에 어떻게 할 수 없음

 

3. transmission delay

케이블의 bandwidth를 늘림

 

4. propagation delay

빛의 속도이니 어쩔 수 없음

 

 

loss 

큐의 크기 보다 더 많은 패킷이 들어온다면?

⇒ 패킷 유실

 

인터넷에서 발생되는 패킷 유실의 90% 이상은 다 큐에서 발생

reliable한 TCP 에서도 라우터와 라우터들 사이에서도 유실될 수 있음

이 경우에는 재전송해야함

 

방법

  1. 유실이 잃어난 라우터 직전 라우터가 재전송 하는 방법
  2. 출발지로부터 다시 재전송

 

인터넷 디자이너들은 2번을 선택

라우터는 단순히 전달만 하는 용도이기 때문에, network edge에서 전송함

⇒ 효율성은 떨어지지만, 속도가 더빠름

 

 

 

복사했습니다!