네트워크/개인공부

[OSI(개방시스템 간 상호 접속) 7 계층]

Gh1324 2022. 6. 13. 12:35
728x90

초기에는 여러 정보통신 업체 장비들은 자신의 업체 장비들끼리만 연결이 되어 호환성이 없었다.

⇒ 모든 시스템들의 상호 연결에 있어 문제 없도록 표준을 정한 것이 바로 OSI 7계층인것

[제 1계층] 물리 계층(Physical Layer) : BIT

  • 물리적 매체를 통해 비트 흐름을 전송하기 위해 필요한 기능 등을 조정
  • 데이터는 0,1의 비트열
  • 케이블 종류, 무선 주파수 링크, 핀, 전압 등의 물리적인 요건을 의미
  • 대표 장비 : 케이블, 리피터, 허브

 

[제 2계층] 데이터 링크 계층(Data Link Layer) : FRAME : wifi

  • 가공되지 않은 내용의 전송을 당담하는 물리층을 신뢰성 있는 링크로 변환
  • 노드 대 노드 전달
  • 대표 장비 : [스위치] 원하는 목적지에 데이터 패킷을 전송하는 장치
  • L2스위치

 

[제 3계층] 네트워크 계층(Network Layer) PACKET

  • 패킷을 발신지로부터 여러 네트워크를 통해 목적지까지 전달
  • 대표 장비 : [라우터] : L3스위치
  • 내부망과 외부망 연결
  • LAN(Local Area Network:근거리 통신망)을 연결해 주는 장치
  • 최종 목적지에 가기 위하여 거쳐야하는 많은 경로들 중에 적절한 통신 경로를 결정하기 위하여 한 통신망에서 다른 통신망으로 데이터 패킷을 전송하는 장치
  • IP출발주소 목적 주소

 

[제 4계층] 전송 계층(Transport Layer) : TCP/UDP : segment

  • 프로세스 대 프로세스 전달
  • 데이터가 오류없이 순서에 맞게 중복되거나 없어지는 오류 없이 잘 전송되도록 관리하고 분할과 재조립 프로세스간 정보 흐름 조정 등을 수행
  • 대표적인 프로토콜 : TCP / UDP

[ TCP( Transmission Control Protocol ) 프로토콜 ]

  • TCP 헤더

총 20Byte의 헤더 ( 아무 옵션도 없는 기본 헤더일 경우, 최대 60byte )

출발지와 목적지 포트번호

전송하는 데이터의 순서( 올바른 순서로 재조립 할 수 있게 함 )

data offset : 데이터가 시작되는 위치

checksum : 오류 검출을 위한 값

플래그가 많다.(인증)

[TCP 3-way handshake ] : TCP연결을 초기화 할 때 사용

  • 접속 : 3-way handshake → 장치들 사이에 논리적인 접속을 성립하기 위하여 사용
  • 정확한 전송을 보장하기 위해 상대방 컴퓨터와 사전에 세션을 수립하는 과정을 의미
  • 단계 1 :클라이언트는 SYN 패킷을 보내고 SYN/ACK 응답을 기다리는 SYN_SENT 상태, 서버wait for client 상태이다.
  • 클라이언트는 서버에 접속을 요청하는 SYN 패킷을 보낸다.
  • 단계 2 :서버는 클라이언트가 ACK로 응답하기를 기다리는 SYN_RECEIVED 상태가 된다.
  • 서버는 SYN 요청을 받고 클라이언트에게 요청을 수락한다는 ACK와 SYN flag가 설정된 패킷을 발송
  • 단계 3 :이 때, 서버ESTABLISHED(확립) 상태이다.
  • 클라이언트는 서버에게 ACK를 보내고 이후부터 연결이 이루어지고 데이터가 오가게 되는 것

[TCP 4-way handshake ] : 세션을 종료하기 위해 수행되는 절차

[STEP 1]

클라이언트가 연결을 종료하겠다는 FIN플래그를 전송

이때  클라이언트는  FIN-WAIT 상태가 된다.

 

[STEP 2]

서버는 FIN플래그를 받고, 일단 확인메시지 ACK 보내고 자신의 통신이 끝날때까지 기다리는데 이 상태가 서버의 CLOSE_WAIT상태다.

 

[STEP 3]

연결을 종료할 준비가 되면, 연결해지를 위한 준비가 되었음을 알리기 위해  클라이언트에게 FIN플래그를 전송한다. 이때 서버의 상태는 LAST-ACK이다.

 

[STEP 4]

클라이언트는 해지준비가 되었다는 ACK를 확인했다는 메시지를 보낸다.

클라이언트의 상태가 FIN-WAIT ->TIME-WAIT 으로 변경됨

 

[ UDP(User Datagram Protocol) ]

  • UDP 헤더

총 8Byte의 헤더.

발신지, 체크섬 —> 선택입력 필드

네트워크 혼잡처리, 패킷손실에 대한 어떤 처리도 하지 않음 .... —> 프로토콜치고 너무 하는 일이 없음 (별명: NULL 프로토콜)

[ TCP&UDP 비교 ]

  • 메시지를 무사히 운반할 수 있다는 보장이 없음 ( 신뢰성이 보장되지 않음 )
  • 메시지를 순서대로 운반할 수 없음
  • 커넥션 상태 트래킹 없음
  • 혼잡 제어 없음
  • TCP보다 용량이 가볍고 송신속도가 빠름 ( 실시간 전송에 적합 )

[제 5계층] 세션 계층(Session Layer)

 

  • 응용 계층 간의 대화를 제어 ( 상호작용 및 동기화 )
  • 세션 계층의 데이터는 암호, 로그인 확인 정보를 포함하는 등 연결을 시도하는 호스트의 자격을 인정할 만한 정보를 수록
  • 세션의 신뢰성은 세션을 여러 하위 세션으로 나누고, 세션의 흐름 속 검사점인 동기화 지점을 삽입함으로써 보장이 됨연결을 한번 확립시킨다면 사용자가 임의로 종료시킬때가지 그 연결을 쭈욱 확립시켜 줌
  • 문제, 이벤트가 발생할 경우 제일 마지막 동기화 지점부터 다시 시작

[제 6계층] 표현 계층(Presentation Layer) : 네트워크의 데이터 번역자

 

  • 표준화된 응용 계층의 접속과 공통적인 통신 서비스를 제공하기 위해 데이터에 일반적으로 유용한 변환을 수행
  • 정보를 교환하는 시스템이 표준화된 방법으로 데이터를 인식할 수 있도록 해주는 역할을 수행
  • 예) 번역, 압축, 암호화, 보안 등

 

[제 7계층] 응용 계층(Application Layer)

  • 응용 프로세스와 직접 연계하여서 다양한 네트워크 응용 환경을 지원 (WWW를 위한 프로토콜인 HTTP 동작)
  • 사용자에게 가장 직접적으로 보이는 부분이 바로 이 응용 계층에 해당하는 것
  • 구글의 크롬과 같은 브라우저나 스카이프, 아웃룩 등의 응용프로그램이 이 응용 계층에서 동작
728x90

'네트워크 > 개인공부' 카테고리의 다른 글

[ DOCKER ] 도커 관련 명령어  (0) 2022.10.02
네트워크 관련 용어 정리(1)  (0) 2022.06.21