Chapter01. Computer Networks and the Internet
The network core
- mesh of interconnected routers
- packet switching
- host가 application-layer msg를 packet으로 분할
- 한 router에서 다음 router로 packet을 전달하고 source에서 destination으로 이동 경로의 link를 가로지른다
- 각각의 packet이 full link capacity로 전송 → 나눠 쓰지 않음
Packet switching : store-and-forward
- 저장 후 전달
- Transmission delay
- 나가는 데에 걸리는 시간
- L bit 패킷을 R bps로 다음 링크로 전송하는 데에 L/R sec 소요
- Store and forward
- 모든 packet이 router에 도착 해야지만 다음 링크로 전송을 보낼 수 있음
- End-end delay
- 2L/R 소요
- propagation delay가 없다는 가정 하에
Packet switching : queueing delay, loss
- Packet queuing and loss
- 일정 시간 동안 링크로의 arrival rate > 링크의 transmission rate
- 도착하는 패킷이 한 링크로 전송되어야 하는데 그 링크가 다른 패킷을 전송하고 있다면 도착하는 패킷은 출력 버퍼/큐에서 대기해야 한다
- packet이 queue에 있으면서 output link에서 전송되기를 기다린다
- packet이 router의 memory/buffer가 가득 차면 drop/lost될 수 있다
Two key network-core functions
- Forwarding (table)
- local 작업
- router의 input link에서 적절한 router output link로 arriving packet 이동
- 목적지 주소를 router의 output link로 mapping
- 패킷이 라우터에 도착하면 라우터는 올바른 output link를 찾기 위해 주소를 조사하고 이 목적지 주소를 이용해 포워딩 테이블을 검색한다. 그 이후 라우터는 그 패킷을 출력 링크로 보낸다
- Routing (protocol)
- global 작업
- forwarding table을 설정하는 데에 이용됨
- 각 router로부터 각 destination까지의 최단 경로를 결정하고 router에 forwarding table을 설정하는 데에 이 최단 경로 결과를 이용
- packet이 사용하는 source ~ destination path 결정
- source ~ router 경로 설정
- routing 알고리즘 필요
- Delay의 4가지 종류
- Processing
- Queueing
- Transmission
- Propagation
Alternative to packet switching : circuit switching
- source ~ destiination 사이의 “통화”를 위해 예약된, 할당된 end-end resource
- end-end 시스템 간에 통신을 제공하기 위해 필요한 자원은 통신할 동안에 확보 or 예약된다
- dedicated resource : 공유 금지, 회로와 같이 guaranteed(보장된)
- 통화로 사용하지 않으면 circuit segment idle (공유 불가)
- 주로 전화망에서 사용
Circuit switching : FDM and TDM
- Frequency Division Multiplexing (FDM)
- (narraow, 좁은) 주파수 대역으로 나누어진 optical, electromagnetic 주파수
- 주파수 스펙트럼을 공유
- 각각의 통화가 자신의 band를 할당하고, narrow band의 max rate(속도)로 전송할 수 있다
- Time Division Multiplexing (TDM)
- 시간을 slot으로 나눈다
- 각각의 통화는 주기적인 slot을 할당하고, 해당 시간대에만 (wider) frequency band에서 max rate로 전송할 수 있다
Packet switching vs Circuit switching
- Packet Switching
- 알아서 도착할 거라 상대가 알아서 확인
- 더 많은 user가 동시에 network를 사용할 수 있다
- 35명 (근데 10명보다 더 많은 사람이 동시에 데이터를 보낼 확률은 0.0004)
- circuit switcing과 대등한 지연 성능을 가지면서도 3배 이상의 사용자 수를 허용
- 가변적이고 예측할 수 없는 지연 때문에 실시간 서비스에는 부적합
- bursty data에 적합 (전송할 데이터가 있을 수도 있지만 없을 수도 있음)
- 자원 공유
- 보다 간단하며 call 설정 X
- 과도한 혼잡의 가능성 : buffer overflow로 packet의 delay, loss → 데이터 내보내는 속도 ↓
- reliable 데이터 전송과 혼잡 contool에 필요한 프로토콜
- reliable data transfer : 내가 보낸 순서대로 도착, TCP의 서비스
- 순서대로 도착, 오류X, 중복X → TCP → Reliable
- 요구할 대만 링크의 사용을 할당
- Circuit Switching
- 데이터 보내기 전에 상대와의 링크가 설정이 되어야 한다
- 10명
- circuit-like behavior을 제공하는 방법 : 기존 오디오/비디오 app에 사용되던 bandwidth 보장
- 자원 배정
- 요구에 관계 없이 미리 전송 링크의 사용을 할당
Internet structure : a "network of networks:
- Host가 ISP에 access하여 인터넷에 연결
- residential, enterprise ISPs
- Host는 ISP로 연결된다 → ISP도 연결되어야 한다 → Host끼리 Packet 주고 받기가 가능해진다
- 차례대로 ISP에 access하려면 interconnect 필요
- 2개의 호스트가 서로 패킷을 보낼 수 있게 됨
'Computer Science > Computer Network' 카테고리의 다른 글
[CS][컴퓨터 네트워킹 하향식 접근] Chapter1.6 Protocol Layer, service models (0) | 2023.11.01 |
---|---|
[CS][컴퓨터 네트워킹 하향식 접근] Chapter1.5 Security (0) | 2023.11.01 |
[CS][컴퓨터 네트워킹 하향식 접근] Chapter1.4 Performance : loss, delay, throughput (0) | 2023.10.31 |
[CS][컴퓨터 네트워킹 하향식 접근] Chapter1.2 The Network Edge (0) | 2023.10.13 |
[CS][컴퓨터 네트워킹 하향식 접근] Chapter1.1 What is the Internet? (0) | 2023.10.13 |