OSI 7계층
네트워크는 다수의 시스템을 전송 매체로 연결한 것입니다. 소규모 네트워크를 전송 매체로 연결해 더 큰 네트워크로 확장할 수 있습니다. 컴퓨터 네트워크는 외형상 호스트 시스템과 전송매체로 구분됩니다. 하지만 이런 물리적인 형태와는 별개로 수행하는 내부 기능을 다양한 구조로 구분할 수 있습니다. 특히, 호스트가 제공하는 방식에 따라서 계층 모델로 나눠 설명할 수 있습니다.
OSI 7계층 모델에 대해 설명하도록 하겠습니다. 실제로 사용하는 모델이 아닌 참조모델입니다. 따라서 OSI 참조모델이라고 불리기도 합니다. 특징이 다른 여러 호스트를 서로 연결해 통신하려면 연결 방식을 표준화해야 합니다. 국제 표준단체인 ISO (International Standard Organization)에서는 OSI (Open System Interconnection) 7계층 모델을 제안했습니다.
OSI 7계층
OSI 모형은 국제표준화 기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이며, 일반적으로 OSI 7계층이라고 합니다.
ISO
International Organization for Standardization의 약자입니다. 국제 규격화 기구 또는 국제 표준화 기구라고 칭합니다. 1947년 출범하였으며 나라마다 다른 산업, 통상 표준의 문제점을 해결하고자 국제적으로 통용되는 표준을 개발하고 보급하기 위해 만들어 졌습니다.
OSI 7계층 소개
OSI 7계층 모델( OSI 7 Layer Model)에 따르면, 네트워크에 연결된 호스트는 7개 계층으로 모듈화된 통신 기능을 갖추어야 한다고 설명합니다. 일반 사용자는 OSI 7계층 맨 위에 있는 응용 계층을 통해 데이터 송수신을 요청하며, 이 요청은 하위 계층으로 순차적으로 전달되어 맨 아래 있는 물리 계층을 통해 상대 호스트에 전송됩니다. 그리고 요청이 각 계층으로 전달되는 과정에서 계층별로 담당하는 기능을 수행해 데이터를 안전하게 전달합니다.
데이터를 수신한 호스트에서는 송신 호스트와 반대과정을 거치게 됩니다. 물리계층으로 들어온 데이터는 순차적인 상향 전달 과정을 거쳐 응용 계층으로 올라갑니다. 그리고 처리가 완료된 결과를 회신할 때는 반대과적을 순차적으로 거쳐서 송신 호스트로 되돌아가게 됩니다. 따라서 데이터를 송수신하는 최종 주체는 송수신 호스트 양쪽에 위치한 응용계층이며, 아래의 계층은 데이터 전송에 필요한 기능만 나누어 처리합니다.
1계층(물리 계층)
물리 계층은 물리적 매체를 통해 비트 흐름을 전송하기 위해 필요한 기능들을 조정하고, 인터페이스의 기계적, 전기적 규격, 전송매체를 다루게 됩니다. 전송 매체는 동축케이블과 같은 물리적인 것을 말합니다. 물리계층(Physical Layer) 은 호스트를 전송 매체와 연결하기 위한 인터페이스 규칙과 전송 매체의 특성을 다룹니다.
2계층(데이터링크 계층)
물리 계층으로 데이터를 전송하는 과정에서 잡음(Noise)같은 여러 외부 요인에 의해 물리적 오류가 발생할 수 있습니다. 데이터 링크 계층(Data Link Layer)은 물리적 전송 오류를 감지하는 기능을 제공해 송수신 호스트가 오류를 인지할 수 있게 해주며 노드 대 노드 전달을 합니다. 발생 가능한 물리적 오류의 종류에는 데이터가 도착하지 못하는 데이터 분실과 내용이 깨져서 도착하는 데이터 변형이 있습니다. 일반적으로 컴퓨터 네트워크에서의 오류 제어(Error Control)는 송신자가 원 데이터를 재전송(Retransmission)하는 방법으로 처리합니다.
3계층(네트워크 계층)
송신 호스트가 전송한 데이터가 수신 호스트까지 도착하려면 여러 중개 시스템을 거치게 됩니다. 이 과정에서 데이터가 최적의 경로를 선택할 수 있도록 지원하는 계층이 네트워크 계층(Network Layer)입니다. 중개 시스템의 기능은 일반적으로 라우터(Router)장비가 수행합니다. 네트워크 부하가 증가하면 특정 지역에 혼잡(Congestion)이 발생할 수 있는데 이것도 데이터의 전송경로와 관계가 있으므로 네트워크 계층이 제어합니다.
4계층(전송 계층)
컴퓨터 네트워크에서 데이터를 교환하는 최종 주체는 호스트 아니고, 호스트에서 실행되는 프로세스 입니다. 전송계층(Transport Layer)은 송신 프로세스와 수신 프로세스간의 연결(Connection)기능을 제공하기 때문에 프로세스 사이에 신뢰성 있는 데이터 전송을 지원합니다. 계층 4까지의 기능은 운영체제에서 시스템 콜(System call) 형태로 상위계층에 제공하며, 계층 5 ~ 7의 기능은 사용자 프로그램으로 작성됩니다. 4계층의 중요한 점은 종단 대 종단(Peer -to -Peer)까지의 신뢰성 있는 데이터 전송 보장입니다.
5계층(세션 계층)
세션 계층(Session Layer)은 전송계층의 연결과 유사한 세션 연결을 지원하지만 이보다 더 상위의 논리적 연결입니다. 네트워크의 대화 조정자로 통신하는 시스템들 사이의 상호작용을 설정, 유지하고 동기화 합니다. 즉, 응용 환경에서의 사용자 간의 연결로 사용되기 때문에 전송 계층의 연결과는 구분됩니다.
6계층(표현 계층)
표현 계층(Presentation Layer)은 전송되는 데이터의 의미(Semantic)를 잃지 않도록 올바르게 표현하는 방법을 다룹니다. 정보를 교환하는 시스템이 표준화된 방법으로 데이터를 인식할 수 있도록 해주는 역할을 합니다. 표현 계층의 주요 기능은 압축과 암호화입니다. 동영상과 같은 대용량의 멀티미디어 데이터를 압축해 전송 데이터의 양을 줄일 수 있습니다. 암호화는 외부의 침입자로부터 데이터를 안전하게 보호하는 기능입니다.
7계층(응용 계층)
응용 계층(Application Layer) 은 사용자의 다양한 네트워크 응용 환경을 지원합니다. 기능은 한 분야에 한정되지 않고 매우 광범위합니다. 사용자 인터페이스를 제공하고, 전자우편, 원격 파일접근(FTP)과 전송, 공유 데이터베이스 관리 및 여러 종류의 분산 정보 서비스를 제공합니다.
2017/07/31 - [IT/네트워크] - 네트워크 기초2 - OSI 4계층 심화
데이터 단위
네트워크 프로토콜을 사용해 데이터를 교환할 때는 먼저 데이터를 특정 형태로 규격화하는 작업이 필요합니다. 예를 들어, 우편물을 보낼 때 정해진 규격 봉투를 사용하는 것과 같습니다. 네트워크에서도 데이터를 프로토콜에 맞춰 묶어 줍니다. OSI 7계층 모델의 각 계층에서 규격화 된 데이터는 고유 명칭이 있습니다. PDU라고 부르는데 계층마다 앞에 이름을 붙이게 됩니다.
APDU(Application Protocol Data Unit) : 응용 계층에서 사용하는 데이터의 단위, PPDU(Presentation Protocol Data Unit) - 표현 계층에서 사용하는 데이터의 단위, SPDU(Session Protocol Data Unit) - 세션 계층에서 사용하는 데이터 단위,
TPDU - 전송 계층에서 사용하는 데이터의 단위입니다. 인터넷에서 사용하는 전송 계층 프로토콜인 TCP에서는 세그먼트(Segment)라 부르고 UDP에서는 데이터그램(Datagram)이라 부릅니다.
NPDU - 네트워크 계층에서 사용하는 데이터의 단위입니다. 보통 패킷(Packet)이라고 부릅니다. 패킷이라는 용어는 일반적으로 쓰이기도 합니다.
DPDU - 데이터 링크 계층에서 사용하는 데이터의 단위입니다. 프레임(Frame)이라고 부릅니다.
개인적 생각
처음에 OSI 7계층을 공부할 때는 정말 어렵고 아무것도 이해가 되지 않았습니다.
그렇지만 이것을 외우고 실제 실무에 적용할 때는 이해가 점점 됩니다. 아직도 이해 못한 부분들이 있지만 4계층까지만 알고 있는다면 네트워크까지는 문제가 없을 것으로 보여집니다.
또한 저의 경우는 5~7은 한 계층으로 이해 하는게 더 편리했습니다. (실제 계층별 역할은 다르나 TCP/IP모델 처럼 하나의 어플리케이션 단으로 이해하며 더 편함) 특히나 네트워크 관련 프로그래밍을 하려는 경우는 OSI 계층 모델에 대해 완벽한 이해를 하고 넘어가는 것이 좋을 것이라고 생각됩니다.
2017/08/11 - [IT/네트워크] - TCP/IP 프로토콜에 대한 설명, TCP, IP의 개념
물론 배우는 순서가 있는 것은 아니지만 1계층부터 올라가며 7계층까지 배우면 좋을 것 같습니다.
특히나 네트워크의 경우 밑단에서 일어나는 일들을 제대로 알아야 위 단까지 알 수 있는 경우가 많이 존재하므로 확실히 개념을 잡고 넘어가는게 좋을 것 같습니다. 네트워크 관련 면접으로 나올 수 있습니다.
또한 정보처리기사나 정보보안기사의 기본적인 지식과 같으므로 물데네전세표응으로 외워서 면접 볼 때 답변과 시험을 볼 때 답을 잘할 수 있기 바랍니다.
▼ 도움이 되셨다면 공감 또는 댓글을 남겨주시면 작성자에게 힘이 됩니다.
▼ 문의사항 댓글도 환영합니다.
'IT > 네트워크' 카테고리의 다른 글
Wireshark 설명 및 설치 방법 정리 (0) | 2017.08.03 |
---|---|
네트워크 - NAT의 개념 및 장점 (0) | 2017.08.02 |
네트워크 기초2 - OSI 4계층 심화 (0) | 2017.07.31 |
라우팅과 라우팅 프로토콜에 대해 알아보자. (0) | 2017.07.17 |
네트워크 기초용어 정리 및 설명 (0) | 2017.07.16 |
댓글