일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 계산기앱만들기
- Swift
- customclass
- jQuery
- 자바스크립트
- 스프링
- ios
- FLASK
- iOS배포
- Xib
- JavaScript
- 웹
- 개발기록
- FileOwner
- MainScheduler
- Python
- 맥
- 앱버전구하기
- iOS앱배포
- 딩동말씀
- Xcode
- 앱배포
- AJAX
- 파이썬서버
- DispatchGroup
- 스위프트
- iOS계산기
- spring
- subscript
- 계산기앱
- Today
- Total
개발하는 뚝딱이
컴퓨터 네트워크 ch1 (3) 본문
1.3 The Network Core
- circuit switching (telecommunication networks)
- dedicated circuit per call (자원[가상의 선로]를 점유하고 있으므로, 정보를 전달하지 않아도 돈을 지불해야함)
- The sender can transfer the data to the receiver at the guaranteed rate.
- 전용도로 - 가상의 선로로 쭉 보냄
- packet- switching (Internet)-라우터
- data is sent through networks in packets
- forward packets from one router to the next, across links on path from source to destination (sotre-and-forward 방식, packet을 보내면 router로 다 전달받음)
- each packet transmitted at full link capacity
- The internet makes its best efforts to deliver packets in a timely manner, but it does not make any guarantees.
- data is sent through networks in packets
Taxonomy of Switched Networks
Host A router1 router2 router3 Host B
통신선로를 1M라고 했을 때,
[Circuit Switched] : 1M를 64k로 나눠서 할당받은 내에서만 데이터 전송
[Packet Switched] : 최대 1M의 rate에서는 1 → 2로 전달됨 (full link capacity)
→ 사용자가 많아서 1M보다 보내야 하는 양이 많으면 버퍼에 저장해뒀다가, 버퍼도 차 버리면 그냥 버림
Circuit Switching
End-end resources reserved for "call"
- link bandwidth, switch capacity
- dedicated resources : no sharing
- circuit-like (guaranteed) performance
- call setup required
- Circuit switching involves three phases :
- circuit establishment
- Before any data is transmitted, an end-to-end circuit must be established, i.e. network resources on a path between end devices must be reserved
- Data transfer
-
- After some period of data transfer, the connection should be terminated and dedicated resources are releasedCircuit release (disconnect)
- [Propagation delay] : Transmission에서 전기적 속도는 매우 빠르지만, 매체 속에서 느려지므로 거리가 길어지면 어쩔 수 없이 delay가 생긴다
Multiplexing in Circuit-switched Networks
- Each link can be shared among 'N' circuits
- Each circuit gets a fraction of 1/N of the link's bandwidth
- Multiplexing
- Set of techniques that allows simultaneous transmission of multiple signals across a single data link
- link는 같지만 slot을 다르게 하여 multiplexing 가능
- Two basic multiplexing methods
- Frequency division multiplexing (FDM)
- Assign a non-overlapped frequency bandwidth to each channel through a modulation
- Time division multiplexing (TDM)
Multiplexing : FDM and TDM
Multiplexing : FDM
Multiplexing : TDM
- TDM is a digital multiplexing technique for combining several low-rate channels into one high-rate one
- Regularly assign time slots to each channel
Circuit Switching
- Advantages
- Guaranteed qualith of services (QoS)
- Delay at nodes(=switch) is negligible
- Disadvantages
- Inefficient use of resources ; 데이터 전송을 안해도 자원을 점유하고 있기 때문. 특히 traffic이 bursty할 때. 그러나 constant rate로 data가 전송되면 비효율적이지 않다
- Circuit establishment delay
Numerical example
How long does it take to send a file of 640,000bits from host A to host B over a circuit-switched network?
- All links are 1.536Mbps
- Each link uses TDM with 24 slots
- 500msec to establish end-to end circuit
- 한 슬롯 당 $1.536\times10^6bps/24$ $ [= R] $ 의 속도로 데이터 보낼 수 있음
- 그러면 총 데이터는 $640\times10^3/R$의 속도로 보내짐
- propagation delay 무시
- setup $500msec$ 더하면
$500msec + 640\times10^3/R$
Packet switching
- Each end-end data stream is divided into packets (header + payload)
- Store the packet, and then forward the packet to the next node (store-and-forward)
- 일단 라우터에서 packet을 받아 저장, 목적지 주소 분석 후 다음 라우터로
- User A, B packets share network resources
- Each packet uses full link bandwidth
- Resource는 필요할 때만 쓰이는 On demand방식
- No dedicated allocation
- Congestion may occur
- aggregate demand가 available resource보다 많아지면 congestion 발생
- queue에 잉여 정보 저장 (시간 지체)
Statistical Multiplexing
- 데이터를 보냈다 안보냈다 함 - 어느 순간은 traffic이 많고 그래도 평균적으로 같이 link 사용한다.
- 그래서 스케쥴링하여 공평하게! 내가 안쓰면 남이 쓸 수 있도록 하여 bursty traffic에 더 효율적이게!
- Schedule link on demand basis rather than predetermined basis of resources
- Link capacity is shared on packet-by-packet basis only among those users who have packets that need to be transmitted over the link
- Buffer packets that are contending for the link
- Congestion may occur (queueing and loss)
Two key network-core functions
routing : 경로 정하기 - forward table이 생김
forwarding : forwarding table에 따라, 받은 packet 보내기
Packet switching vs circuit switching
Example
- N users share 1Mb/s link
- each user :
- 100kb/s when "active"
- active 10% of time
- Q : How many users can be supported with CS and PS?
- Assumption : The probability that more than 10 users are active should be less than 0.0004
- Circuit-switching : $1Mbps/100kbps = 10$ simultaneous users
- packet switching :
- 10명까지는 다 더해도 1M이므로, 10명은 일단 수용 가능
- 11명부터 N명까지, i명이 동시에 packet을 사용할 확률은
- $\sum_{i=11}^{N} {}_N \mathrm{C}_i (0.1)^{i}(0.9)^{N-i}<0.0004$
- Packet switching allows more users to use network!
Packet Switching
Advantages
- Efficinet for bursty data
- Resource sharing
- Simpler, no call setup
Disadvantages
- No guarantee QoS : variable packet delay and loss
- protocols for reliable data transfer, congestion control, throughput도 보장되지 않음
Q : How to guarantee QoS?
- QoS needed for audio/video apps
- still an unsolved problem
- congestion을 줄여야 함 - 어떻게 detect하고 줄이느냐가 핵심!
Packet switching (store-and-forward)
- Packet size = L bits, transmission rate = R bps
- If queueing delay and propagation delay are ignored,
- Total delay (latency) = 3L/R
cf) 한 패킷을 보내는 데 필요한 Transmission delay = L/R
propagation delay는 한 비트 당!
Datagram Networks
- packet switching이라고 하면 보통 datagram networks를 말한다
- Analogy : postal service
- No connection setup phase
- Stateless switch
- 스위치가 꺼졌다 켜져도 정보전달은 된다? stateless!
- setup 때 테이블을 만들기 때문에 setup과정은 필요 없다
- Each packet is forwarded independently
- Based on the routing table
- packet의 목적지가 같다고 같은 route를 통해서 가는 것은 아니다!!!
- Each packet has the complete destination address
- Addres is a globally unique identifier
- 주소는 32bit이고, 관리하는 단체가 산하기관에 IP를 나눠준다
- Sometimes called connectionless model
Virtual Circuit Networks
- Establish a virtual connection from the sender to the destination before data transfer
- 여기서 테이블 생성
- A single route, so-called virtual circuit, is chosen between the sender and the destination
- Signaling protocol is used for connection setup
- Each switch maintains connection state
- VC entry $\leq$ in_interface, in_VCI, out_interface, outVCI
- Generally VCI[Virtual Circuit Identifier] is not a globally significant identifier
- VCI (Virtual Circuit Identifier) : 통신하고자 하는 상대방까지 어떻게 갈지 알려줌! (globally unique X)
- Connection setup provides an opportunity to reserve resources
- However, a virtual circuit does not have deicated resource
- VC types
- PVC : permanent VC - 사람이 테이블 만든다
- SVC : Switched VC - 쉽지 X
Virtual Circuit Networks
incoming, outcoing VCI가 자주 바뀌는 건 packet에게 좋지 않다. (bit가 많이 필요할 것이므로)
unique한 Identifier를 만들지 않게 하기 위함이다.
Advantages
- Small look-up table
- 그 당시에 사용하는 애들의 정보를 가짐
- Fast packet switching (그러나 요즘, 테이블이 커져도 하드웨어적으로 search해 빨리 찾음)
- Possibility to support QoS
- Resource can be allocated during call setup
- In-Order packet delivery
Disadvantages
- Need call setup procedure
- Each switch should maintain state-informaiton
- susceptibility to failure
Internet structure
- End systems connect to Internet via access ISPs (Internet Service Providers)
- Residential, company and university ISPs
- Access ISPs in turn must be interconnected
- So that any two hosts can send packets to each other
- Resulting network of networks is very complex
- Evolution was driven by economics and national policies
'컴퓨터 네트워크' 카테고리의 다른 글
컴퓨터 네트워크 ch2(3) (0) | 2019.10.08 |
---|---|
컴퓨터 네트워크 ch2 (2) (0) | 2019.10.08 |
컴퓨터 네트워크 ch2(1) (0) | 2019.09.27 |
컴퓨터 네트워크 ch1 (2) (0) | 2019.08.29 |
컴퓨터 네트워크 ch1 (1) (0) | 2019.08.27 |