[Computer Networking] Chap 1 #32-58
- Internet structure: multi-tier hierarchy
- Two ways of connecting different networks (usually different ISPs): IXP and Peering
- What is Point of Presence (PoP)?
- What is the advantage of a multi-homed network?
- Content Provider Network (CPN) or Content Delivery/Distribution Network (CDN)
- CPN and CDN are compatible, but CDN is more widely used.
- The goal of CDN is to reduce latency which content users feel by wisely locating caches (usually closer to users)
- 1-hop delay (or nodal delay) : processing delay --> queueing delay -> transmission delay --> propagation delay
- e2e Delay = Number of hop X 4 kinds of delays per hop
- Queueing delay in an output queue can be estimated by an index called "Traffic Intensity (TI)",
- TI = (arrival rate into output queue) / (departing rate from output queue)
- arrival rate into output queue = L-bits x a packets/sec. (초당 a개의 L-bit 패킷이 큐에 진입)
- departing rate from output queue = outgoing link의 transmission rate R bps
- As a value of IT gets closer to 1, queueing delay rapidly increases.
- How to measure a real delay to a host (A).
- Type "tracert (A's IP address)" on your Window system.
- Type "traceroute (A's IP address)" on your Linux or Unix systems.
- This command uses TTL(Time-To-Live) field in an IP header and ICMP (Internet Control Management Protocol) messages. (Linux-like OS에서는 UDP를 이용한 응용으로 작성되어있음)
- Can you define “Throughput”? How is “Throughput” different from “transmission rate or link bandwidth” ?
- Throughput: amount of bits delivered between two end hosts over a specific period of time; it is a real-time measurement. (수업시간에 external link에 부과되는 데이터량이 증가하면 external link가 bottleneck 링크가 될 수 있다고 한 것이 real-time measurement를 의미함. 일시적인 부하는 괜찮으나 지속적으로 external link가 bottleneck 링크가 되면 외부 링크 증설이 필요할 수 있음.)
- transmission rate: usually about link’s capacity (amount of bits transmitted, i.e. bit ---> signal per second; it is not a real-time measurement.
- Unit is bps (bits per second) for both.
- Throughput is determined by a bottleneck link (real-time measurement) on an e2e path between two hosts.
Packet switching vs Circuit switching
access network를 탄 다음에 마지막 edge router를 지나면 edge router가 access point에 들어가기 전까지가 core
core에서 packet circuit switching의 장단점
pkt
pkt switching은 하나의 user의 사용률이 적은 편일때 효과적임
경로 상의 router를 거쳐가면서 각각의 router들이 forwarding table을 바탕으로 look up을 해야함
즉, router 마다 signal로 오던 걸 bit로 바꾸고 다시 signal로 바꾸는 걸 계속해야하며
link의 한쪽에 몰리게 되면 delay가 생기는 문제 발생 - reliable하지 않음
router가 user의 traffic을 처리하는 data plane은 3계층까지 있음 즉, reliable하지 않다는 건 ip의 성질을 나타냄
(router가 하는 핵심 동작 - ip 동작)
delay loss가 생길 수 있어서 loss 처리는 따로 안함
voice에 제일 좋은 건 circuit switching이지만 pkt으로도 어느 정도 처리 가능
human analogies of reserved resouces(circuit switching) versus on-demand allocation(packet-switching) ?
-> packet switching 목적지는 있으나 그 사이에 어떻게 갈지는 모르는 점에서
circuit
circuit은 ex.3kpbs로 fixed함 -> call set -up 가능 -> bandwidth 다 결정 해서 dedicate
( 반면, packet은 dynamic함 8kbps ..등등
첫번째 access network에 연결되었는 access link의 속도,내가 쓰는 단말기의 성능, 내가 쓰는 응용 등의 영향을 받음 but, pkt단위로 끊어서 중간 가는 길에 buffer 존재하기때문에 다양한 rate 여도 ok
누구한테도 보장해주지 않으며내가 안쓰면 남이 쓰고 남이 안쓰면 내가 다 씀
more user -> 간헐적으로 보내는 user일때 )
예시
transmission delay 전체 메시지를 end to end로 보내는데 걸리는 시간
circuit - e2e에서 transmission이 source host에서 한번만 일어남
첫번째 source host에서 transmission해서 signal을 보내면 그대로 signal로만 전송함
packet - packet 단위로 [한개의 라우터를 거쳐갈때 include되는 transmission time ]
n명의 유저가 keep send하고 있으므로 한 유저가 쓰는 속도는 R/n bps -> 1sec
Internet structure : a "network of" networks
각각의 ISP를 어떻게 연결할지 -> global ISP - switch 사용 -> 여러개 global ISP
-> global ISP끼리 연결 방법 peering link *비용x / IXP(internet exchange point) *사업
Point of Presence (PoP) - ewha
여러개 라우터 배정 - 하나의 ISP와 연결
ewha - customer isp 서비스를 받기 위해 비용 지불
kt - provider isp
Multi-home
starbucks - customer isp -> 다수의 customer isp와 연결 - 하나가 제공하지 못하는 상황이여도 문제 없음 = reliable함
Regional ISP
access isp - regional isp - global isp
multiple competing reginal isp 여러개 사이에서 경쟁
smaller regional isp에서 larger regional isp로 연결되야 함 = multi-tier hiearchy 구조를 가짐
Content Provider Networks
private
How do loss and delay occur?
source에서 dst 가면서 10개의 라우터를 거쳐감 - forwarding을 10번함
forwarding
router에 l번째 bit가 도착하는 시점 부터 다음 router에 l번째 bit가 도착하는 시간까지가 한 단위
router의 input buffer에 lbit가 다 쌓이는 순간 store 끝났으니까 읽어야지
l2가 헤더 때고 ip한테 주면 dst주소보고 만들어져있는 forwarding table보고 lookup 함 1. processing delay
이런식으로 input buffer의 bit를 output buffer로 옮기는 일을 switching
r bps를 sharing 하기 때문에 output buffer에서 기다려야함 - 2. queing delay
차례가 오면 l개의 bit를 trasmission - 3. transmission delay
첫번째 비트가 transmission되는 순간 바로 propagated 4.propagation delay
4개의 delay 를 합쳐서 nodal delay
라우터 10개 -> 10번의 nodal delay =end to end에 걸리는 시간
"Real" Internet delays and routes
ICNP -protocol
pkt - nonreliable -ip 동작 error, loss에 대응 안함 -> 무슨 문제가 생기면 report는 함= ICNP를 보냄
traceroute가 ICNP 사용하는데 그 원리가
source가 ICNP를 만들고 TTL(time to live) >= hop 개수
-> error 발생해서 dst에 도착을 안하고 돌고 있으면 혼자 죽도록
이걸 역으로 이용해서 traceroute가 사용함
ttl을 1로 놓으면 응답해서 시간 측정
2로 놓고 응답오면 시간 측정 ...
dst에서 절대 처리할 수 없는 port보내서 응답 받음