어흥

[CS] 컴퓨터 네트워크 본문

CS/컴퓨터네트워크

[CS] 컴퓨터 네트워크

라이언납시오 2020. 10. 6. 16:39
728x90
반응형

[OSI 7 계층]

1. 각 계층의 역할

- 전송 계층

    TCP: 어플리케이션 계층 메세지 전달 보장, 오류 검출, 흐름제어(송수신자의 속도 일치), 혼잡제어(긴 메세지를 짧게 나눈다-> 네트워크 혼잡시 출발지의 전송속도 줄인다)

    UDP: 신뢰성, 흐름제어, 혼잡제어 제공X, 오류 검출, 프로세스간 데이터 전달 제공

- 네트워크 계층: 논리 주소 지정, 라우팅

- 데이터링크 계층: 오류제어, 순서제어, 흐름제어

 

2. 데이터 단위

- 응용 프로그램: 메세지(Message)

- TCP/ UDP 통신: 세그먼트(Segment)

- 네트워크: 데이터그램(Datagram)

- 데이터링크: 프레임(Frame)

- 물리: 비트(Bit)

 

3. 기본적인 용어

- Node: 컴퓨터 네트워크상에 연결된 장치

- Host: 고유 IP 주소를 가진 Node

- Link: Node 간 물리적 연결 통로

- Hop: 거리의 단위로, 보통 1개의 링크

- 경로(Path): End to End까지의 이동 경로

- Protocol: 데이터 통신을 원활하게 진행하기 위해 필요한 규약

 

4. 흐름제어(Flow Control) v.s. 오류제어(Error Control) v.s. 혼잡제어(Congestion Control)

- 오류제어: 송신측에서 타이머를 설정하여 수신측으로부터 ACK를 정상적으로 받지 못했다면 재전송. ACK이 손실될 경우, 송신측에서 재전송하고 수신측에선 재전송 Data인지 새로운 Data인지 구분하기 위해 순서번호를 이용

- 흐름제어: 데이터 프레임의 전송속도를 조절. 송신이 수신보다 전송속도가 빠를 경우, 문제 발생 (Ex. Stop & wait, Sliding Window)

- 혼잡제어: 송신측의 데이터 전달과 네트워크의 처리속도 차이를 해결하기 위한 기법(Ex. Slow start, Fast Recovery)

- Slow Start: 윈도우 크기를 2배씩 늘리다가 혼잡할 경우 1로 낮춘다(1->2->4->8->1->2->3->4->...)

- Fast Recovery: 윈도우 크기를 2배씩 늘리다가 혼잡할 경우 반으로 낮춘다(1->2->4->8->4->5->6->....)

 

5. Handshake

- 2-Handshake(사용하면 안되는 2가지 예)

 

- 3-Handshake(연결 요청 시점에 이용)

 

 

- 4-Handshake(연결 종료 시점에 이용)

- ACK와 SYN(SEQ와 같다)의 관계

위의 그림을 통해 간단히 요약하자면 다음과 같다

ACK(SEQ N~N+99을 받은 후): N~N+99번 데이터를 받았으니, 다음에는 N+100번부터 달라는 의미로 ACK N+100을 보낸다

SEQ(SEQ N, 100byte를 보낼 때): SEQ N~N+99번에 해당하는 데이터를 전달 

 

6. 출발지A -> 도착지B까지 메세지 전송과정

- 각 계층에서의 Packet 구성

  1) 애플리케이션: M

  2) 트랜스포트: Ht M

  3) 네트워크: Hn Ht M

  4) 링크: Hl Hn Ht M

 

- 링크 계층 스위치: 이더넷 주소까지만 인식할 수 있다 -> Hl까지만 접근가능

- 라우터: IP 주소까지만 인식할 수 있다 -> Hl, Hn까지만 접근가능

- 결론: 출발지 A에서 메세지 M을 보내기 위해 각 계층에서 Header를 추가하여 캡슐화 진행이후 전달

 

7. TTL(Time To Live)

- IPv4 Header의 필드중 하나

- 패킷의 남은 생명(3계층을 거칠때마다 1씩 줄어든다) -> 레이어 3 홉마다 1씩 줄어들고, 레이어 2 홉은 영향을 미치지 않는다

- 8비트로 구성 -> 0~255까지 사용 가능

- 목적지에 도착할 때 TTL의 값이 0을 만족해도 전달완료

- Ex) 독일에서 빠른 테스트 실행하면 미국까지 17홉, 일본까지 18홉

 

 

참고한 블로그

- brunch.co.kr/@toughrogrammer/16

- jsonsang2.tistory.com/17

- whenday.tistory.com/18

 

728x90
반응형

'CS > 컴퓨터네트워크' 카테고리의 다른 글

UDP TCP HTTP  (0) 2021.10.28
Comments