반응형
OSI(Open Systems Interconnection)계층은 OSI 7계층이라고도 한다.
컴퓨터 네트워크 프로토콜 디자인을 7개의 계층으로 구분한 것으로 통신이 일어나는 과정을 단계별로 파악할 수 있다.
- Physical Layer(물리 계층): 실제 장치들을 연결하기 위한 전기적, 기계적, 기능적인 특성을 이용하여 통신 케이블로 데이터를 전송.
통신 단위는 비트(bit)이며 데이터를 전달만 함.
대표적으로 허브, 리피터 등이 속해 있음. - Data link Layer(데이터 링크 계층): Point to Point(점대 점)간 신뢰성 있는 전송(오류, 흐름관리)을 보장하기 위한 계층. 주소 값은 물리적으로 할당 받음(네트워크 카드가 만들어질 때 부터 맥주소가 정해져있다는 뜻)
통신 단위는 프레임 예로는 이더넷을 들 수 있다.
point-to-point 프로토콜 : HDLC, ADCCP
근거리 네트워크용 프로토콜 : 패킷 스위칭 네트워크나 LLC, ALOHA
대표적으로 스위치가 있다.(스위치를 통해 맥 주소를 가지고 1계층에서 받은 정보 전달.) - Network Layer(네트워크 계층): 데이터를 목적지까지 가장 안전하고 빠르게 전달하는 기능(라우팅).
경로 설정(Route), 주소 부여(IP), 경로에 따른 패킷 전달, 여러 개의 노드를 거칠 때 경로를 찾아주는 역할. 이 과정에서 Transport Layer가 요구하는 서비스 품질을 제공.
- IP 계층 : TCP/IP 상의 IP계층은 IP주소 정의 및 IP패킷 전달, 라우팅을 담당
하위계층인 데이터 링크 계층의 하드웨어적 특성에 상관없이 독립적 역할 수행
주요 프로토콜 : IP(패킷의 전달), ICMP(패킷 전달 에러보고 및 진단), 라우팅 프로토콜(라우터간 라우팅 정보를 교환및 라우팅 테이블에 정보 등록)
- IP 프로토콜 : TCP/IP 기반의 인터넷 망을 통하여 데이타그램의 전달을 담당하는 프로토콜로 IP계층에서 IP패킷의 라우팅 대상 및 IP주소 지정
신뢰성및 흐름제어 기능이 전혀 없다.(신뢰성 확보를 위해서는 TCP같은 상위 트랜스포트 계층에 의존해야 함.) ⇒ Best-Effort Service
비 연결성 데이터그램 방식으로 전달되는 프로토콜 ⇒ Connectionless
패킷의 완전한 전달(소실, 중복, 지연, 순서바뀜 등)을 보장하지 않음 ⇒ Unreliable
IP 패킷 헤더 내 수신 및 발신 주소를 포함 ⇒ IPv4 헤더, IPv6 헤더, IP 주소
IP 헤더 내 바이트 전달 순서 ; 최상위 바이트(MSB)를 먼저 보냄 ⇒ Big-endian
TCP, UDP, ICMP, IGMP등이 IP데이타그램에 실려 전송
이 계층에서 동작하는 스위치도 있다. 데이터를 연결하는 다른 네트워크를 통해 전달함으로서 인터넷이 가능케하는 원리다.
대표적으로 라우터가 있다. - Transport Layer(전송 계층): 통신을 활성화하기 위한 계층으로, 포트를 열어서 응용프로그램들이 전송을 할 수 있게 한다. 데이터가 왔다면 4계층에서 해당 데이터를 하나로 합쳐서 5계층에 던져 준다. 양 끝단(End to End) 사용자들이 신뢰성 있는 데이터를 주고 받을 수 있도록 해줌(오류검출, 흐름제어, 중복검사). 상위 계층이 데이터 전달의 유효성이나 효율성을 생각할 필요가 없게 한다.
특정 연결의 유효성을 제어하고, 일부 프로토콜은 상태 개념이 있고 연결기반이다.(패킷들의 전송의 유효 확인, 전송실패 패킷 재전송)
대표적으로 TCP/UDP 프로토콜을 사용한다.
TCP와 UDP 프로토콜 관련 내용은 아래 링크 참조
https://jjomnoon-diary.tistory.com/11 - Session Layer(세션 계층): 데이터가 통신하기 위한 논리적 연결을 뜻함. 양 끝단의 응용 프로세스가 통신을 관리하기 위한 방법을 제공. 동시 송수신 방식(duplex), 반이중 방식(half-duplex), 전이중 방식(Full Duplex)의 통신과 함께, 체크 포인팅과 유휴, 종료, 다시 시작 과정 등을 수행. TCP/IP 세션을 생성 및 삭제하는 책임이 있다.
- Presentation Layer(표현 계층): 코드간의 번역을 담당. 입력 또는 출력되는 데이터를 하나의 표현 형태로 변환하여 상위계층의 부담을 덜어준다. MIME 인코딩이나 암호화 등의 동작이 이 계층에서 이루어진다.
- Application Layer(응용 계층): 응용 프로세스와 직접 관계하여 일반적인 응용 서비스를 수행한다.
네트워크 소프트웨어 UI 부분, 사용자의 입출력(I/O)부분
대표적으로 HTTP, FTP, SMTP, POP3, IMAP, Telnet 등과 같은 프로토콜이 있다.
반응형
'개발일지 > 운영체제' 카테고리의 다른 글
프로세스와 쓰레드의 차이 (0) | 2022.05.30 |
---|---|
[LINUX/UNIX] 톰캣 설치 경로, 톰캣 버전 확인하기 (2) | 2021.05.14 |
댓글