본문 바로가기

Development Note

PART 1 : Basic of Network (Chaper 3. OSI 7 Layer Model ①)

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
사용자 삽입 이미지
<OSI 7 Layer 참조 모델>

OSI Layer Model을 왜 사용하는가?

레이어 모델을 사용함으로서 소프트웨어나 하드웨어 개발자 모두가 많은 이득을 얻을 수 있다. 개발자는 자신이 개발하려는 소프트웨어나 하드웨어가 어드 Layer에서 작동하는지만 알고 있으면 되고, 다른 레이어가 어떤 기능을 하는지 에 대해서는 알 필요가 없다. 그러므로 기능이 변경 되더라도 다른레이어에는 영향을 미치지 않는다.
데이터의 이동이 한눈에 보이기 떄문에 개발이 쉽고, 오류가 발생하더라도 7개의 레이어의 하위 계층부터 하나씩 해결해 나가면 된다. 그리고 ISO 표준에 맞게 개발을 하기때문에 어떤 컴퓨터에서든지 해당 소프트웨어가 동작할 수 있다는 것을 의미하므로 호환성이 좋다.

각 레이어의 특징

   - Physical Layer


단순하게 한 컴퓨터로부터 다른 컴퓨터로 0과 1로 이루어진 디지털 신호를 전기적 신호로 변환하여 전송하는 역할을 한다. 데이터에 대해서는 전혀 관여하지 않으며 상위 레이어인 Data Link Layer로 올려 보내는 역할을 한다. 통신케이블, 리피터, 허브 등이 대표적인 장비이다.

   - Data Link Layer

상위 계층인 네트워크 계층의 다양한 프로토콜을 위한 서비스를 제공하고 물리적 계층을 이용해 데이터를 전송하는 역할을 담당하는 계층. Physical Layer가 단순히 물리적 신호만을 생산하는데 반해, Data Link Layer에서는 이 물리적인 신호의 신뢰도를 높여준다. 대표적인 장비로는 브리지와 스위치가 있다.

   - Network Layer

복잡하게 얽혀있는 네트워크에서 가장 적합한 경로를 정해주는 역할을 수행하는 계층. 대표적인 장비는 라우터이고, 라우터는 목적지 네트워크로 갈 수 있는 가장 좋은 경로를 선택하여 데이터를 전송한다.

주소의 지정
논리적인 주소(IP주소)와 물리적인 주소(MAC주소)를 번역
네트워크 경로상의 모든 트래픽을 계산하여 최상의 경로를 선택하여 패킷을 전송
두 노드간의 논리적 연결을 수행하고 유지

   - Transport Layer

통신장비와는 관계 없이 End-to-End 전송에만 관여한다. 상위계층인 세션 계층에 서비스를 제공하고, 하위계층인 네트워크 계층을 이용하여 노드와 노드 사이의 라우팅 작업을 지시한다. 상위계층의 논리적 작업을 처리하여 하위 계층에게 데이터를 전달하는 아주 중요한 계층이다.

연결지향통신(Connection Oriented Communication)
송신측이 수신측에게 연결을 요청하고 수신측은 연결을 승낙하고 순차적으로 전송이 완료되면 연결을 끊는 방식 (Three-way Hand-Shaking) 따라서 뒤에 보낸 패킷이 먼저 도착하는 일은 없다.

비연결지향통신(Connection-less Oriented Communication)
송수신측 사이의 연결을 설정하지 않고 독립적으로 패킷을 전송하기 때문에 받는 쪽에서는 패킷을 순서에 따라서 재조합 해야할 필요가 있다.



   - Session Layer

네트워크 연결에서 컴퓨터상의 응용프로그램이 세션이라는 특수한 방법을 통해서 연결을 공유한다. 장치 간이나 노드간의 데이터 전송을 하는데 있어서 3가지 모드를 제공한다.

Simplex : 단방향 전송, 한 장치는 송신, 다른 한 장치는 수신만 하는 경우(라디오, TV)
Half-Duplex : 반이중 전송, 송,수신이 가능하지만 동시에 할수는 없는 경우(무전기)
Full-Duplex : 전이중 전송, 송,수신이 동시에 가능하다(전화)



   - Presentation Layer

네트워크가 요구하는 데이터 형식과 응용프로그램이 요구하는 데이터 형식간의 변환을 수행한다. 문자집합의 변환, 데이터 캡슐화, 압축계층 같은 데이터 형식 변화에 관여한다.

   - Application Layer

OSI 레이어 모델의 최상위 계층이며 사용자와 직접 만나게 되는 아주 중요한 요소이며 응용 프로그램을 네트워크와 연결시켜주는 역할을 한다. FTP나 Telnet 과 같은 응용프로그램이 있다.