[1강. 링크계층 프로토콜]
1. Data link 계층에서 하는 일
1. Frame synchronization: frame송수신 동기화
2. Flow control: 수신쪽에서 overflow가 일어나지 않도록 흐름제어
3. Error control
4. Physical addressing: 식별
5. Access control: 접근제어 (multiplex 관련)
2. Poll/Select
multidrop/multipoint 방식에서 line cost 를 절감하기 위해 사용하는 방법
* multidrop/multipoint : 여러 터미널이 하나의 선을 공유하는 경우 (ex: 전화선)
1) polling : primary가 secondaries 에 전송할게 있는지 질의 (데이터흐름 secondaries->primary)
2) select : primary 장치가 전송할게 있을때마다 사용 (데이터흐름 primary->secondaries)
3. Framing
data link 계층은 bits를 frames 로 packing. 각각의 frames 은 구분가능.
frame 내에서 single bit error 가 존재할 경우 전체에 대한 재전송이 필요.
1) fixed-size framing : 고정크기
2) variable-size framing : 가변크기
[2강.데이터링크 계층 프로토콜의 HDLC]
1. Frame
1) Character-oriented protocols
Character(2bytes = 8bit) 가 최소단위의 frame으로 사용됨
#byte-stuffing이란
flag bit와 data 의 bit 가 일치하는 경우 프레임 단위 구분이 모호해지는 문제가 있음.
이를 구분하기 위해 byte-stuffing(or character stuffing) 전략을 사용.
이때 삽입되는 byte를 ESC(escape character)라고 칭함
예) ESC 삽입의 예
flag와 일치하는 data bit 가 있을 경우 앞에 ESC 삽입.
ESC와 동일한 bit가 있을 경우 그 앞에도 ESC 삽입.
ESC 뒤의 데이터는 무조건 데이터 bit로 간주.
2) Bit-oriented protocols (주로사용)
01111110 을 주로 flag 로 사용
#Bit stuffing
flag와 data bit을 구분하기 위해 011111 와 같이 1이 연속적으로 5개 있는 경우 그뒤에 0을 삽입하여 flag와 data bit 를 구분
* 수신측은 1 다섯개 뒤에 있는 0은 무조건 제거
2. Flow control
수신측의 속도를 맞춰 송신측의 속도 제어
# Flow control 방법 세가지
1) XON/XOFF : 전송stat/stop
ex: PC->프린터, 프린터 출력속도가 느려 버퍼가 거의 찰 경우 PC에 stop 요청 이후 start 요청
2) Stop-and-wait : frame을 1개씩 보내기
ex: 프레임 1개 전송 후 잘 받았다는 회신을 받아야 다음 프레임 전송
3) Sliding window : frame 여러개를 한번에 보내기
* Window size = outstanding frame의 갯수
= unacknowledged frame
= ACK를 받지 않은 frame
= ACK 없이 보낼 수 있는 최대 frame 수
eg. window size 가 3인 경우, ACK 없이 최대 3개 프레임을 전송 할 수 있음.
eg2. window size가 3일 때, ack 를 첫번째 송신후 받은 경우 두번째 프레임으로 부터 다시 3개까지 ACK 없이 프레임 전송 가능
3. Error Control
Error detection + Error correction
# Error Control 방법
1) Discarding the errors : 에러 무시 (인터넷 전화)
2) Forward Error Correction(FEC) : 수신측에서 에러 수정
3) Automatic repeat request(ARQ) : 재전송
※ KOCW 성균관대학교 안성진 교수님의 컴퓨터네트워크 강의 참고
'Computer Science > data comm & network' 카테고리의 다른 글
[Network] 컴퓨터네트워크 7~9 : Multiple-access protocols(Random access/Controlled-access/Channelization protocols) (0) | 2021.01.14 |
---|---|
[Network] 컴퓨터네트워크 3~6 : HDLC, ARQ 종류, Frame의 형태 (0) | 2021.01.06 |
[Network] 4. P2P : BitTorrent, tit-for-tat (0) | 2020.04.13 |
[Network] 3. Application layer : DNS, TTL (0) | 2020.04.06 |
[Network] 2. Application layer : HTTP, Cookie, Web Cache, Conditional GET, SMTP (0) | 2020.04.05 |