카테고리 없음

Chapter2. OSI 모델과 TCP/IP 프로토

ttoance 2026. 3. 21. 08:55
반응형

학습 목표

- 데이터 통신과 네트워킹, 그리고 계층 간의 상호 관계에서 다중 계층구조에 대한 개념을 알게 된다. 

- OSI 모델과 계층구조, 계층 간의 인터페이스를 알게 된다. 

- OSI 모델에서 각 계층의 기능을 알게 된다 .

- TCP/IP를 소개하고, TCP/IP 계층과 OSI 모델에서 해당 계층을 비교할 수 있다. 

- 몇 가지 예를 통해서 TCP/IP 프로토콜의 각 계층의 기능을 알게 된다. 

- 발신지에서 목적지까지 메시지 전달을 위한 TCP/IP 프로토콜의 일부 계층에서 사용하는 주소지정 메커니즘을 알게 된다. 

 

 

- 와이어샤크는 근거리통신망 LAN 을 통해서 전달되는 패킷을 캡처해서 분석하는 도구이다. 

ㄴ 패킷이란 네트워크에 접속되어 있는 컴퓨터끼리 통신 통하여 주고받는 데이터 단위를 말한다. 

ㄴ 이 데이터는 약속에 따라 작성되고, 정해진 약속에 따라 송/수신된다. 

- 서로 떨어져 있는 컴퓨터끼리 서로 제멋대로 데이터를 보낸다면 통신은 성립되지 않는다. 

- 1990년대 이전까지는 데이터 통신과 네트워크에 대한 계층 모델은 개방 시스템 상호연결 모델이었다. (OSI 모델)

- TCP/IP 프로토콜은 인터넷에서 광범위하게 시험을 거쳐서 사용되어 왔기 때문에 지배적인 상업적 구조가 되었으나 OSI 모델은 완전히 구현되지 않았다. 

 

1. 프로토콜 계층구조

1.1 계층 구조 

- 여기서 중요한 것은 임무가 계층구조에 주어진 순서대로 행해져야 한다는 것이다. 

- 송신 측에서, 편지가 작성되어, 암호로 변환되고, 편지 운반자가 전달하기 전에 우체통에 넣어서 우체국으로 전달된다. 

1.2 서비스

- 송신 측에 있는 각 계층은 자신의 아래에 있는 계층의 서비스를 이용한다. 

- 위 계층에 있는 송신자는 중간 계층의 서비스를 이용한다. 

- 중간 계층은 하위 계층의 서비스를 이용한다. 

 

2. OSI 기본 참조 모델

- 1974년에 설립된 국제표준화기구는 세계적으로 인정받는 국제 표준을 제정하는 다국적 기관이다. 

- 네트워크 통신을 전체적으로 다루고 있는 ISO 표준은 OSI 기본 참조 모델이다. 

- 개방 시스템(Open System)은 기반 주고와 관계없이 서로 다른 시스템 간의 통신을 제공하는 프로토콜의 집합니다. 

ㄴ OSI 모델은 하드웨어나 소프트웨어 기반의 논리적인 변화에 대한 요구 없이 서로 다른 시스템 간의 통신을 원활하게 하는 데 목적이 있다. 

 

2.1 계층화된 구조

- 물리층, 데이터 링크층, 네트워크층, 전송층, 세션층, 표현층, 응용층으로 구성되어 있다. 

- 장치 A에서 장치 B로 전송될때 관련되는 계층을 보여주고 있다. 

- 메시지가 A에서 B로 전송되는 도중에 많은 중간 노드를 거칠 수 있다. 

ㄴ 이 중간 노드는 항상 OSI 모델의 처음 3계층만 이용한다. 

 

2.2 계층-대-계층 통신

1) 계층 간 인터페이스

- 데이터와 네트워크 정보가 송신 장치의 각 계층을 따라 전달되고, 다시 수신 장치의 각 계층을 따라 올라가는 것은 인접한 계층 간의 인터페이스를 통해 이루어진다. 

- 각 인터페이스는 한 계층이 바로 위의 계층에게 제공해야 하는 정보와 서비스를 정의한다. 

- 한 계층이 바로 위의 계층으로 미리 정의된 서비스를 제공한다면, 다른 계층을 전혀 바꾸지 않고도 그 계층의 기능을 구현하는 방식을 변경하거나 대체화할 수 있다. => 모듈화 가능

 

2) 계층의 구성

- 7개의 계층은 3개의 그룹으로 나눌 수 있다. 

- 제 1,2,3 계층은 물리층, 데이터 링크층, 네트워크층으로 한 장치에서 다른 장치로 데이터 전송할 때 필요한 물리적인 면(전기적인 규격, 물리적인 연결, 물리 주소, 전송 시간과 신뢰도 등)을 처리한다. 

- 제 5,6 계층인 세션층, 표현층, 응용층은 사용자 지원 계층으로 서로 관련이 없는 소프트웨어 시스템 간의 상호 연동을 가능하게 한다. 

- 전송중인 제 4계층은 두 그룹을 연결하고, 하위 계층에서 전송한 내용을 상위 계층이 사용할 수 있는 형태가 되도록 보장한다. 

 

2.3 캡슐화 

- 제 7계층의 패킷은 제6계층의 패킷으로 캡슐화한다. 

- 제 6계층의 패킷은 제 5계층의 패킷으로 캠슐화된다. 

- 즉, 제 N계층의 전체 패킷은 N-1계층 패킷의 데이터 부분으로 전송된다. 

ㄴ N-1계층은 캡슐화된 패킷의 데이터인지 헤더 또는 트레일러인지 모르기 때문에 캡슐화라고 한다. 

 

2.4 OSI 모델의 계층 구조 

1) 물리층 physical layer

- 물리 매체 통하여 비트 스트림을 전달하는 데 필요한 기능들을 조정한다. 

- 물리층은 장치와 전송 매체 간에 인터페이스의 특성을 규정한다. 

- 물리층 데이터는 해석되지 않은 비트 스트림으로 구성되어 있다. 

- 전송률도 물리층에서 규정된다. 

- 송신자와 수신자는 같은 비트율을 사용할 뿐만 아니라 비트 레벨에서 동기화되어야 한다.

- 회선 구성을 구성한다. ex, 점대점, 다중점 ..

- 물리적 접속형태를 규정한다. ex, 그물형 접속형태, 성형 접속형태, 링형 접속형태, 버스형 접속형태

- 전동모드를 규정한다 ex, 단방향 모드, 반이중 모드, 전이중 모드

 

2) 데이터 링크층 data link layer

- 물리층에 있는 전송 설비를 신뢰할 수 있는 링크로 변환한다. 

- 비트 스트림을 프레임이라는 데이터 단위로 나눈다. 

- 프레임의 송신자/수신자를 지정하기 위해 프레임에 해더를 더한다. 

- 데이터 전송률을 조정한다. (흐름 제어)

- 손상되고 손될된 프레임을 탐지한다. (오류 제어)

- 둘 또는 그 이상의 장치가 같은 링크에 연결되어 있을때 제어권을 결정한다. (접근 데어)

 

3) 네트워크층 network layer

- 데이터 링크층이 같은 네트워크 상에서 두 시스템 간에 패킷 전달을 책임지면, 네트워크층은 각 패킷이 발신 지점에서 최종 목적지까지 갈 수 있도록 보장한다. 

ㄴ 만약 두 시스템이 같은 링크에 있다면, 항상 네트워크 층이 필요 없다. 

- 논리 주소를 지정한다. 

- 네트워크 간 연결 또는 규모가 큰 네트워크 연결하려면 경로지정이나 스위칭이 이루어진다.

 

4) 전송층 transport layer

- 전체 메시지의 프로세스 대 프로세스 전달을 책임진다. 

- 네트워크 계층이 개별 패킷의 발신지-대-목적지 전달을 책임지지만, 이들 패킷 간의 관계는 처리하지 않는다. 

- 서비스 지점의 주소를 지정한다.

- 분할과 재조립 : 메시지는 각 세그먼트가 순서 번호가 들어있는 전송 가능한 세그먼트로 나누는데, 이 순서 번호는 메시지가 목적지의 전송층에 정확하게 도착하여 재조립되고 패킷이 전송 중에 손실되거나 교체된 것에 대한 식별을 가능하게 한다. 

- 비연결층이나 연결층에 따라, 먼저 연결을 만들지를 결정한다. (연결 제어)

- 데이터 링크층처럼 흐름을 제어하나, 단일 링크라기 보다는 종단-대-종단에서 수행한다. (흐름 제어)

- 프로세스-대-프로세스로 오류를 제어한다.

 

5) 세션층 

- 두 프로세스 간에 반이중이나 전이중 모드로 통신하는 것을 허용한다. (대화 제어)

- 데이터 스트림에 확인점을 추가한다. (동기화)

 

6) 표현층 

- 서로 다른 부호화 방법 간에 상호 운영성을 책임진다. (변환)

- 중요한 정보를 전달하기 위해서 프라이버시를 보장해야 한다. (암호화)

- 데이터 압축을 통해 정보에 들어있는 비트의 수를 줄여준다. (압축)

 

7) 응용 계층 

- 사용자가 네트워크에 접속하는 것을 가능하게 한다.

- 전자우편, 원격 파일 접속과 전송, 공유된 데이터베이스 관리, 분산된 정보서비스의 또 다른 유형과 같은 서비스를 지원하고 사용자 인터페이스를 제공한다.  

- 응용 계층에 의해 제공되는 특정 서비스는 다음과 같다. 

ㄴ 네트워크 가상 터미널

ㄴ 파일 전송, 접근, 관리 

ㄴ 전자우편 서비스

ㄴ 디렉토리 서비스

 

2.5 OSI 계층의 요약 

3. TCP/IP 프로토콜

- TCP/IP 프로토콜은 OSI 기본 참조 모델보다 먼저 개발되었다. 

- 다섯계층인 물리층, 데이터 링크층, 네트워크층, 전송층, 응용층으로 구성되어 있다. 

ㄴ 처음 네 계층은 OSI 모델의 네 계층과 일치하는 물리적인 표준, 네트워크 인터페이스, 네트워크 간 상호연결, 그리고 전송 기능을 제공한다. 

ㄴ 최상위 세 계층은 TCP/IP에서 제공하는 응용층이라는 하나의 계층으로 표현된다. 

 

3.1 TCP/IP와 OSI 그룹 간 비교 

- TCP/IP 모델의 응용층은 세 계층의 조합으로 생각할 수 있다. 

이유 1) TCP/IP는 하나 이상의 전송층 프로토콜을 가지고 있어서, 세션층의 기능들 중 일부는 전송층 프로토콜의 일부로 이용할 수 있다. 

이유 2) 응용층은 소프트웨어의 일부분만이 아니다. 많은 응용이 이 계층에서 개발될 수 있다. 만약에 세션층과 표현층에서 언급된 기능중 일부가 특정 응용에 필요하다면 소프트웨어로 개발해서 포함시킬 수 있다.

 

3.2 TCP/IP 프로토콜의 계층들 

1) 물리층 

- 특정 프로토콜을 규정하지 않고, 모든 표준과 기술적인 프로토콜을 지원한다. 

- 이 레벨에서 통신은 두 홉 또는 노드 간, 컴퓨터나 라우터 간이다. 

- 통신 단위는 단일 비트이다. 

- 물리층의 책임은 비트의 전달에 추가하여 OSI 모델의 물리층에 대한 언급한 것과 일치하다. 

 

2) 데이터 링크층 

- 특정 프로토콜을 규정하지 않고, 모든 표준과 프로토콜을 지원한다. 

- 이 레벨에서 통신은 두 홉이나 노드 간이다. 

- 통신 단위는 프레임이다. 

ㄴ 프레임은 네트워크층으로부터 받은 데이터에 헤더가 더해지고 트레일러가 더해짐으로써 캡슐화된 패킷이다. 

 

3) 네트워크층 

- TCP/IP는 인터넷프로토콜(IP) 을 지원한다. 

ㄴ IP는 3개의 지원 프로토콜(ARP, ICMP, IGMP)을 포함한다. 

 

cf1) 인터넷 프로토콜 

- 신뢰성 없는 비연결형 데이터그램 프로토콜로서 최선의 노력으로 전달을 제공하는 전송 서비스이다. 

ㄴ 최선의 노력이란 IP가 오류 검사나 추적을 제공하지 않는다는 것을 의미한다. 

- 각기 개별적으로 전송되는 데이터그램이라는 패킷 형태로 데이터를 전송한다. 

- 데이터그램은 서로 다른 경로로 전달될 수 있으므로 순서대로 도착하지 않거나 중복되어 도착할 수 있다. 

- 경로를 기록하지 않고, 일단 목적지에 도착한 데이터그램을 재전송하는 기능도 제공하지 않는다. 

 

cf2) 주소 변환 프로토콜 ARP

- IP주소를 물리적인 주소로 변환해주는다. 

- LAN같은 물리적인 네트워크에서, 링크상의 각 장치는 네트워크 인터페이스 카드의 물리주소인 로컬 주소에 의해 구분된다. 

- ARP은 인터넷 주소를 알고 있을때 노드의 물리주소를 찾는데 사용된다. 

 

cf3) 인터넷 제어 메시지 프로토콜 ICMP 

- 송신자에게 데이터그램의 문제점을 알려주기 위해 호스트와 게이트웨이가 사용하는 메커니즘이다. 

- ICMP는 조회와 오류 보고 메시지를 보낸다. 

 

4) 전송층

- TCP/IP에서 전송층은 3개의 프로토콜(TCP,UDP,SCTP)을 갖는다. 

ㄴ IP는 호스트-대-호스트 프로토콜로서 패킷을 하나의 물리적인 장치에서 다른 물리적인 장치로 전달 할 수 있다는 것을 의미한다. 

ㄴ UDP, TCP, SCTP는 하나의 프로세스에서 다른 프로세스로 메시지 전달하는 기능 갖는 전송 레벨 프로토콜이다. 

 

cf1) 사용자 데이터그램 프로토콜 UDP

- 표준 TCP/IP 프로토콜보다 단순하다. 

- 포트 주소, 감사함 오류 제어, 상위 계층으로부터 받은 데이터 길이 정보만 추가한다. 

- 프로세스-대-프로세스 프로토콜이다. 

 

cf2) 전송 제어 프로토콜

- 응용에 대한 모든 전송층 서비스를 제공한다. 

- 신뢰성 있는 스트림 전송 프로토콜이다. 

ㄴ 스트림이란 연결형을 의미하고, 데이터 전송하기 전에 양 존당 간의 연결을 설정해야 한다. 

- 각 전송의 송신 종단에서 TCP는 데이터 스트림 세그먼트라는 작은 단위로 나눈다.

- 각 세그먼트는 수신된 세그먼트에 대한 확인응답 번호와 함께, 수신 후에 순서를 맞추기 위한 순서번호를 포함하고 있다. 

 

cf3) 스트림 제어 전송 프로토콜

- UDP와 TCP 장점을 결합한 전송 제어 프로토콜이다. 

- 네트워크층은 컴퓨터 A에서 컴퓨터 B까지 개별적인 데이터그램을 보내는 책임을 갖지만, 전송층은 A에서 B까지 사용자 데이터그램, 패킷, 세그먼트라는 전체 메시지를 전달하는 책임이 있다. 

 

5) 응용층 

- TCP/IP에서 응용층은 OSI 모델의 세션, 표현 그리고 응용층을 합친 것과 같다. 

- 종단 사용자가 직접 눈으로 볼 수 있는 층으로 사용자에 대해서 직접 통신 기능을 제공한다. 

 

4. 주소 지정 

- TCP/IP 프로토콜을 이용한 인터넷은 4개의 서로 다른 계층의 주소가 사용되는데, 이는 물리 주소, 논리 주소, 포트 주소, 응용 지정 주소 등이 있다. 

 

 

4.1 물리 주소 

- 링크 주소로 알려진 물리 주소는 LAN이나 WAN에서 정의된 노드의 주소이다. 

ㄴ 데이터 링크 층에 의해 사용되는 프레임이 포함된다. 

- 유니캐스트, 멀티캐스트, 브로캐스트 물리 주소 

ㄴ 물리 주소는 unicast, multicat, broadcast가 될 수 있다. 

ㄴ 어떤 네트워크는 이 세 주소를 모두 지원한다. ex, ethernet 

 

4.2 논리 주소 

- IP 주소라고도 하는 논리 주소는 기존 물리적인 네트워크와 독립적인 전 세계적인 통신 서비스를 위해 필요하다. 

- 물리주소는 서로 다른 네트워크가 서로 다른 주소 형태 갖는 네트워크 간 상호 접속 환경에는 적합하지 않다. 

- 기존의 물리적인 네트워크에 관계없이, 각 호스트를 유일하게 식별할 수 있는 전 세계적인 주소지정 시스템이 필요해서 논리 주소가 나오게 되었다. 

- 논리 주소는 현재 인터넷에 연결된 호스트를 유일하게 식별할 수 있는 32비트 주소체계를 사용하며 인터넷상의 두 호스트는 동일한 IP주소를 사용할 수 없다. 

- 논리주소는 유니캐스트, 멀티캐스트, 브로드캐스트가 될 수 있다. 

ㄴ 브로드캐스트 주소에는 제한이 있다. 

 

4.3 포트 주소 

- 다량의 데이터를 발신지에서 목적지 호스트까지 전송하기 위해서는 IP주소와 물리 주소가 필요하다. 

but 목적지 호스트에 도착하는 것이 인터넷을 통한 데이터 통신의 최종 목적이 아니고 한 프로세스가 다른 프로세스와 통신할 수 있도록 하는 것이 중요하다. 

- 프로제스를 식별하는 방법이 필요해 포트 주소라는 개념이 나오게 되었다.

- 포트 주소 길이는 16비트이다. 

 

4.4 응용 지정 주소 

- 어떤 응용은 특정 응용을 위해 설계된 사용자에게 친근한 주소를 사용한다. 

ex, 전자우편 주소와 url

 

 

반응형