본문 바로가기
CS/네트워크

[데이터 통신] 계층 구조, OSI 7 Layers

by JooRi 2024. 4. 1.
728x90
SMALL

* 계층 구조

계층 구조란 정보통신 시스템의 전체적인 동작을 기술하기 위한 모델이다.

 

계층 구조의 대표적인 특징은 아래와 같다.

- 각 계층에서 수행해야 하는 기능이 정의되어 있다.

- 상위 계층은 하위 계층에 서비스를 요구하고 하위는 적절한 처리 후 상위에 전달한다.

- 하위 계층에 문제 발생 시 상위 계층이 해결한다.

 

상위 계층을 service user, 하위 계층을 service provider라고 할 때,

- service request: service user가 service provider에게 서비스를 요구하는 것

- service response: service provider가 service user에게 받은 요구에 답 하는 것

 

컴퓨터에서의 계층 구조

컴퓨터의 계층 구조는 H/W, OS, Application으로 구성된다

컴퓨터의 물리적인 구성 요소는 H/W와 S/W로 구분되고, S/W는 다시 OS와 Application으로 구분된다.

 

* OSI 7 Layers

OSI 7 계층이란 ISO에서 정보통신 시스템의 동작을 체계적으로 구현하기 위해 제시한 계층 구조의 대표적인 모델이다.

(OSI는 Open System Interconnection으로, 각 계층은 개방형 시스템이다.)

 

OSI Model은 7개의 계층으로 구성된다.

Physical Layer와 Data link layer는 H/W로 구현되고, Network layer와 Transport layer는 OS(운영체제), Session, Presentation, Application Layer는 Application(응용 소프트웨어)에 포함된다.

 

1. Physical layer

가장 하위 계층인 Physical layer는 H/W로 구현된다.

 

Physical layer는 전송 매체(광케이블, 구리선, 무선)의 특성과 세부 사항을 규정한다. 즉, 인터페이스 규격을 정의한다.

구체적으로는 signal(전기, 빛 전파)에 대한 정의, connector를 위한 interface에 대한 정의를 규정한다.

 

Physical layer의 정보 송수신 단위는 bit이다.

- 송신 측:  bit를 표현하는 signal을 송신

- 수신 측: 수신된 신호를 통해 송신 측에서 0을 보냈는지 1을 보냈는지 판단

이때 잡음(noise)으로 신호가 왜곡되면 상위 계층인 Data link layer가 오류를 검출한다.

 

2. Data link layer

H/W에 구현되며, 하나의 link에 대해 reliable 한 data의 전달 기능을 보장한다.

Physical layer에서는 전송 매체에 대한 구분이 필요하지만, Data link layer에서는 구분을 하지 않고 송신 측과 수신 측이 연결되어 있다고 생각하고 정보를 교환한다.

 

Data link layer에서의 link는 정보를 주고받을 수 있는 통로를 의미하며, 주고받는 정보의 단위는 frame이다.

Link의 종류에는 P2P link와 P2MP link가 있다.

 

P2P link(point-to-point link)

단일 송수신자 간에 통신하는 링크이다.

하나의 port에 다른 port가 transmission media를 통해 직접 연결된다.

 

P2MP link(point-to-multipoint link)

다수의 물리적인 port가 상호 연결되는 구성이다.

하나의 port에서 신호를 송신하면 연결된 다른 모든 port로 신호가 broadcast 된다.

P2MP link는 모든 장치가 하나의 링크를 공유하므로 각 장치를 식별할 수 있는 물리 주소(MAC 주소)가 필요하다.

 

3. Network layer

Network layer에서 링크와 링크의 연결은 node에 의해 이루어진다.

따라서 각 노드를 구분하기 위해 각 노드에 할당된 고유한 식별자인 IP주소가 필요하다.

 

Data link layer의 동작은 기본적으로 link가 하나인데, 하나의 link로 연결되지 않는 경우 여러 개의 link를 경유한다.

이때 Network layer는 여러 경로 중 가장 최적의 경로를 찾는다.

 

4. Transport layer

end-to-end로 reliable 한 data 전달 기능을 보장한다.

end-to-end connection은 송신 측과 수신 측 간의 오류가 없는 직접적인 데이터 전송을 의미한다.

송신 측에서 segment에 번호를 붙여 보낸 것을 수신 측에서 확인하여 분실된 segment를 다시 보내도록 요청한다.

 

5. Session layer

Application layer protocol entity 간의 dialog channel을 개설(setup) 및 해제(release)하는 기능과,

protocol entity 간의 데이터 교환을 관리하는 dialog control 기능을 제공한다.

 

데이터 교환은 Duplex 또는 Half duplex 방식으로 수행된다.

- Duplex: 양쪽 entity가 동시에 데이터를 송수신 가능

- Half duplex: 양쪽 entity가 번갈아가며 송수신

따라서 Half duplex 방식은 통신이 지연될 가능성이 높지만, 송수신 간의 충돌을 방지할 수 있으므로 안정적인 데이터 통신이 가능하다.

 

6. Presentation layer

데이터를 보호하기 위한 데이터 암호화 및 복호화, 데이터 용량을 줄이기 위한 데이터 압축 기능을 제공한다.

 

7. Application layer

Naming service, Diretory service, Web service, Mail service와 같은 다양한 응용 서비스를 제공한다.

 

* OSI 7 계층을 이해하기 위해 알아야 할 개념

Encapsulation(캡슐화)

data가 계층을 경유하면서 각 계층의 header가 attach 되는 과정이다.

쉽게 말해, 추가 정보가 붙어 데이터가 전송되는 과정이다.

 

- Physical layer: header가 붙지 않는다.

- Data link layer: 수행해야 할 기능(protocol)인 header와 trailer가 붙는다.(L2 trailer에 error checking 기능이 있다.)

- Transport layer: user의 data를 적절한 크기로 자른 segment가 각 계층을 경유하며 header가 붙는다.

 

Decapsulation

Encapsulation의 반대 과정이다.

 

1) Physical layer에서 Physical media를 통해 수신한 signal로부터 bit를 모아 frame을 구성한 후 Data link layer로 전달한다.

2) Data link layer에서 frame에 error가 발생했는지 check 한다.

3) Error 발생 시 discard 하고, error가 없는 경우 header와 trailer를 제거한 후 packet(내용물)을 Network layer로 전달한다.

 

Protocol

통신하고자 하는 두 개체 간에 무엇을, 어떻게, 언제, 통신할 것인지 서로 약속한 규칙이다.

통신에서 형식(format)과 절차(procedure)를 약속하고 이 규격에 따라 구현한 것이 실체(entity)이다.

 

Protocol Data Unit(PDU)

송신 과정에서 하위 계층에서 상위 계층이 전해주는 data에 자신의 header를 첨부하여 만들어진 정보이다.

(i계층의 PDU = (i)th 계층의 header + (i+1)th 계층에서 받은 data)

 

L2의 PDU는 Frame, L3의 PDU는 Packet, L4의 PDU는 Segment라고 한다.

 

Frame이 만들어지는 과정

data link layer에서 정보를 주고받는 단위가 frame이다.

 

1) 송신 측 data link layer는 가상의 터널인 link를 이용해 수신 측 data link layer에 frame을 전달한다.

2) 하지만 물리적인 경로가 없기 때문에 data link layer은 physical layer에 요청하게 된다.

3) physical layer은 전달받은 frame을 bit단위로 나누어 물리적인 경로인 transmission media를 통해 전달한다.

4) 수신 측 phsical layer은 전달받은 bit들을 data link layer에게 전달하고, 수신 측 data link layer은 link를 통해 frame을 전달받은 것으로 인지하고 처리한다.

 

Peer-to-Peer(P2P) Protocol

각 노드가 직접적인 상호작용을 통해 데이터를 교환하는 방식이다.

 

L1부터 L3까지는 intermediate node를 가지고 있고, L4부터 L7까지는 end node에서 end node로 직접적인 통신이 이루어진다.

따라서 L1~L3은 인접한 곳이 Peer이다.

 

CO(Connection Oriented)

논리적인 connection을 만드는 방식에는 CO 방식과 CL 방식이 있다.

 

CO 방식은 logical connection을 개설(setup) 한 후 정보를 교환(data transfer)하고 logical connection을 해제(release)한다. 따라서 setup, data transfer, release의 3단계로 구성된다.

 

Data transfer 단계에서 일반적으로 error control 및 flow control이 이루어진다.

따라서 에러 발생 시 재전송을 요청하며 reliable 한 서비스를 제공하게 된다.

 

CO 방식을 사용하는 Protocol에는 TCP, ATM이 있고, WAN에서 일반적으로 CO 방식의 protocol을 사용한다.

 

CL(Connection Less)

CL 방식은 logical connection을 setup 하는 과정 없이 바로 정보를 교환한다.

 

Data transfer 단계에서 error control 및 flow control이 이루어지지 않는다.

따라서 에러 발생 시 정보를 discard 하며 reliable 한 서비스를 제공하지 못한다.

 

CL 방식을 사용하는 대표적인 protocol에는 IP, UDP가 있고 LAN에서 일반적으로 CL 방식의 protocol을 사용한다.

 

 

728x90
LIST

댓글