Notice
Recent Posts
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 쒸익!!!!!!!!!
- 누가 보기는 하는걸까...ㅠㅠ
- flutter
- 댓글이 하나도 없오...ㅠㅠ
- 다트 책
- TODO
- 주니어개발자
- bloc
- 편하다요
- 플러터 책
- flutter_secure_storage
- flutter-layout
- FutureBuilder
- flutter_local_notification
- hero animation
- network
- 다트&플러터
- 주변에는 능력자 뿐이야!!
- 프로그래머스
- dfs
- 코딩 잘하고 싶어!!
- 플러터
- flutter secure storage
- 포?코DX
- open weather api
- Null Safety
- 이직
- 크레인 인형뽑기
- Flutter2.8
- 나도 코딩 잘할래!!!!!!!!!!!
Archives
- Today
- Total
오늘하루도 우힣ㅎ
CH6. Link Layer and Lans(2) 본문
4-1. LANs - Ethenet
- Topology
- Bus topology가 90년대 중반까지는 휴행하였다.
- : 모든 노드들이 같은 collision domain에 존재했다.
- Star-topology가 현재 사용중이다.
- : node들의 중간에 하나의 switch를 두고 각각은 구별된 이더넷 프로토콜 을 사용하게 된다.
- Collision Domain : 이더넷 방식의 LAN에서 전송 매체를 공유하고 있는 여러 단말들이 서로 경쟁하며 총돌 발생시, 이 충돌한 프레임이 전파되어 영향을 미치는 영역을 의미한다.
-
Ethernet and IEEE 802.3
- : 10Mbps - 10Gbps의 속도를 가진다.
- : Frame Format
- 둘의 포맷은 PRE에 SFD필드를 포함시키느냐 포함 시키지 않느냐, Type인가 LEN을 위한 필드의 차이가 존재하는데 이둘은 동시에 사용이 가능하게 짜여져 있다. 그 이유는 type field>=x0600 라면 type으로 받아들이고 그 외의 경우는 length로 받아들이기 때문이다.
- MAC Protocol
- Data Link Layer의 IEEE802 표준안을 따르기 위한 표준 구조를 의미한다.
- 1-Persistent CSMA and CD를 사용한다.
- 96bit 시간동안 기다림을 가지게 되는데이는 frame이 왕복하는데 걸리는 시간이다.
- => frame을 보내는동안의 시간만 기다리게 되면 collsion이 발생하게 되기 때문이다.
- Collsion이 발생하게되면
- => 32bit 짜리 jamming sequence를 보내고 전송을 멈추어 다른 node들이 collision 난걸 알게 한다.
- => 임의의 시간동안 대기를 한다.
- Ethennet CSMA/CD algorithm
- Adaptor는 network layer로 부터 데이타그램을 받고 프레임을 생성한다.
- Adaptor가 사용하는 채널이 Idle하다고 판단시 해당 프레임을 전송하게 된다. 또는 해당 채널이 busy 상태라면 채널이 Idle 상태가 될때까지 해당 채널을 보고 있다가 Idle 상태가 되면 프레임을 전송한다. (1-persistent)
- 자기가 보내는 동안 다른곳에서 보내는것에 대해 collsion이 발생하지 않았다면 Adaptor는 프레임 보내는것을 정상적으로 끝낸다.
- Adaptor가 자신외 다른 전송을 감지하게 되면 jamming signal을 보내고 해당 전송을 멈추게 된다.
- 전송이 멈춘후 adaptor는 exponential backoff로 들어가게 된다.
- => m번째 충돌이 있게 되면 {0,1,2,4,...,2^(m-1)}중 random하게 골라 해당 값을(K) 512 bit time에 곱해준만큼 기다리기(K*512bit times) 다 기다리고 난후에는 다시 step2로 넘어간다.
- => m이 10까지 가게 되면 더이상 증가하지 않는다.
- => 16번의 충돌이 일어나게 되면 더이상 보내는 것을 포기한다.
- Unreliable, connectionless service
- Capture Effect -> back off algorithm에 의한 공정성의 문제
- 하나의 유저가 계속해서 channel을 사용하게 되는 문제가 생길수가 있다.
- 두명의 사용자가 있다고 가정을한다.
- 두 사용자 모두 보내야할 데이터가 충분히 있다고 가정한다.
- 충돌이 일어나게 되면 둘다 back off 상태로 들어가게 되고 그중 더 적은 back off 시간을 가진쪽이 계속해서 데이터를 보낼수 있는 확률이 높아지게 된다.
- => i번 충돌이 발생하게 되면 데이터를 다시 전송하기 위해 [0,2^(i-1)] * 51.2 의 값중 랜덤값을 취하기 때문에 나오는 문제
-
Standard Ethernet(10M)
- 10Base : 10M base band로 데이터를 전송함을 의미한다.
- 10Base5
- 최대 세그먼트 길이 = 500m
- repeater를 통해 이어나갈수가 있다. (ethernet의 길이 연장법)
- 최대 4개의 repeater까지만 사용이 가능하다
- => 최대 길이는 2500m
- Minimum frame size : 64 bytes(Header size + Minimum data size +CRC = 14+46+4)
- round trip time : 51.2us(64bytes = 512 bits => 512/10M = 512/1,000,000)
- => timer를 두지 않고도 collision 발생 유무를 알수 있게 해준다.
- Star Topology
- user간의 연결을 별모양으로 연결시켜 두는것으로 연결점은 hub나 switch중 하나를 골라 사용하게 된다.
- Hub : physical-layer repeater이다.
- => frame을 받게 되면 자신과 연결된 모든 link로 받은것을 보내게 된다.
- => collision domain의 분리가 되지 않는다.
- => Hub내에서는 CSMA/CD가 이루어 지지 않는다.
- Manchester encoding
- 원래 데이터를 보낼때 데이터 시그널에 해당하는 clock signal도 동시에 보내져야 한다. 그러기 위해서는 하나의 line(물리적)이 더 필요하게 되는데 이를 피하고자 data와 clock정보를 동시에 보낼수 있도록 하는 방법이다.
- 원 신호가 1을 보내게 되면 manchester ecoding을 통해 1 0 을 전송하고 0을 보내면 0 1 을 보내는 형식이다.
- clock 정보가 포함되어 보내지고 있음을 알수가 있다.
4-2. LANs - Switches
- Interconnecting with Hubs
- Hub를 통해 연결길이를 확장시킬수가 있다.
- collsioin domain간의 분리가 되지 않기 때문에 연결시 하나의 collsion domain으로 되게 된다.
- 서로 다른 cable을 섞어서 사용할수가 없다.
- Switch
- Link layer device이다.
- Ethernet frame들을 저장하고 목적지로 보낸다.
- frame의 MAC addr을 확인하고 목적지로 보내게 된다
- 보낼때 CSMA/CD를 사용하여 collision 이 발생하지 않도록 한다.
- self-learning : 자신이 받은 frame에 대한 정보를 스스로 학습하고 table에 저장한다.
- plug-and-play : 장치에 연결하게 되면 스스로 자신을 인식시키고 설치하고 실행된다.
- Forwarding
- Self learing
- switch는 각각의 switch table을 가지고 있다.(router 에서의 forwarding table 같은것)
- switch table에는 MAC address, Interface, Time Stamp를 저장하게 된다.
- 60분의 시간이 지나게 되면 해당 정보는 사라지게 된다.
- 어떤 host가 어떤 인터페이스를 통해 도착 가능한지를 배우게 된다.
- Switch는 받은 데이터를 보낸쪽 (sender)에 대해 배우게 된다.(sender/location pair in switch table)
- Switch : Traffic isolation
- Switch 는 하나의 subnet을 LAN segment들로 분리시킬수가 있다.
- Switch를 사용 하게 되면 collsion domain을 분리시킬수가 있다.
- 같은 LAN segement 프레임은 다른 LAN segment로 보내지지 않는다.
- Switch : dedicated access
- Switch : A->A', B->B'으로 frame을 동시에 보내게 될경우 A에서 온 frame은 A'으로, B에서 온 frame은 B'으로만 가기 때문에 collsion이 일어 나지 않는다. - Hub : A->A', B->B'으로 frame을 동시에 보내게 되면 Hub는 A에서 받은 frame을 A를 제외한 모든 domain들로 보내고 B에서 받은 frame은 B를 제외한 모든 domain으로 보내게 된다. => 이 경우 하나의 channel에 두개의 frame이 동시에 보내지므로 collision이 발생하게 된다. |
- More on Switches
- cut-through switching : frame format에서 볼수 있듯 Dest Addr필드가 PRE다음으로 바로 존재하게 된다. 이를 통해 이어지는 정보를 모두 받지 않고도 Dest Addr로 보내게 되는 것이다. (Hub도 해당 기능이 존재한다.)
- => 이때 CRC를 확인하지 않고 frame을 보내기 때문에 에러가 난 frame을 보내는 경우도 발생하게 된다.
- 전송 속도가 다른 cable 간에 혼용이 가능하다.
'네트워크 > 강의정리' 카테고리의 다른 글
CH7. Wireless and Mobile Network (0) | 2020.02.03 |
---|---|
CH6. Link Layer and LANs (0) | 2020.01.20 |
CH5. Network Layer : The Control Plane (0) | 2020.01.14 |
CH4. Network Layer(2) (0) | 2020.01.11 |
CH4. Network Layer(1) (0) | 2020.01.08 |
Comments