network 이론/basic network

OSI 7 Layer

byeong07 2016. 9. 1. 23:56

OSI 7 Layer

 

 

우선 네트워크를 이해하기 위해서는 OSI 7 Layer에 대한 이해가 필요합니다.

OSI는 세계표 준화기구에서 제정한 용어로서, 어떠한 경로와 방식으로 데이터가 송ㆍ수신되는지 보여주는 모델입니다. 각 계층별로 하는 역할이 나뉘어지고, 위에서부터 어플리케이션, 프레젠테이션, 세션, 트랜스 포트, 네트워크, 데이터 링크, 피지컬 계층으로 분류합니다.

 

데이터의 교환은 어느 계층에서 보냈느냐에 따라서 목적지의 계층도 결정됩니다.

예를 들어 7계층에서 데이터가 출발했다면 그 데이터가 도착하는 계층 역시 7계층이어야 역할을 수행할 수 있습니다.

 

 

 

 

 

다음으로 각 계층에 대해 설명하겠습니다.

 


* 7계층 Application (응용계층)

최상위층인 어플리케이션계층은 사용자에게 서비스를 제공하는 계층입니다.

저희가 네트워 크망을 구축하고, 프로그램을 만드는 것 모두 어플리케이션이 쓰기위한 것이기 때문에 가장 궁극적인 목적이라고 볼 수 있습니다.

프로토콜은 HTTP, FTP, SMTP, DHCP, NFS, Telnet, SNMP, POP3, IMAP, NNTP, IRC, BOOTP, RMON, TFTP 등이 있습니다

 

HTTP(Hyper Text Transfer Protocol) - 그래픽 이미지, 사운드, 비디오, 웹 상 텍스트, 기타 멀티미디어 파일들을 송, 수신하는데 사용하는 프로토콜 등이 있습니다.

 

SMTP(Simple Mail Transfer Protocol) - 인터넷에서 전자우편(E-mail)을 보낼 때 사용하는 표 준적인 프로토콜입니다.

 

FTP(File Transfer Protocol) - 인터넷을 통해 PC에서 PC로 파일 전송하는 프로토콜입니다.

 

Telnet(Tele Network 합성어) - 멀리 떨어진 PC를 연결하여 이쪽 PC에서 그 쪽 PC로 연결 터미널을 만드는 프로토콜입니다.

 

DHCP(Dynamic Host Configuration Protocol) - 호스트 IP 구성관리를 단순화하는 IP 표준입 니다. 사용 클라이언트에게 동적으로 할당하는 방법을 제공합니다.

 

DNS(Domain Name System) - 도메인이나 호스트 이름을 숫자로 된 IP 주소로 해석해주는 TCP/IP 네트워크 서비스입니다.

 


* 6계층 Presentation (표현계층)

 

사람이 읽고 쓰는 데이터에서 컴퓨터가 인식 가능한 형태로 데이터를 암호화, 압축화, 파일 형식을 변환시키는 계층입니다.

컴퓨터는 사용자와는 달리 어셈블리어와 같은 기계어를 사용합니다.

사용자 역시 마찬가지로 기계어를 알 수는 없습니다.

이러한 것들을 서로 알아들 을 수 있도록 하는 계층이 프레젠테이션 계층입니다.

 

- ASCII : PC에서 사용하는 문자, 알파벳, 숫자 기호를 표현하는 코드화된 표준 코드

 

 - BCD : 영어, 문자, 기호들을 나타내기 위한 표준코드

 

- EBCDIC : 8자리 2진수를 사용하여 문자, 숫자, 구두점을 부호화하는 시스템 ASCII 코드에 비해 2배의 기호와 제어기능 표현


HTML(Hypertext Markup Language) - 웹 문서를 만들기 위하여 사용하는 기본적인 프로그 래민 언어의 한 종류입니다. 하이퍼텍스트를 작성하기 위해 개발되었습니다.

 

JPEG(Joint Photographic Experts Group) - 비트맵 그래픽 파일 형식, 압축률이 가장 뛰어나 는데 비슷한 화질로 저장할 때 다른 이미지 형식의 1/10 이하로 작습니다.

 

MPEG(Moving Picture Experts Group) - 동영상파일을 압축하고 코드로 표현하는 방법의 표 준입니다.

 

* 5계층 Session (세션계층)

 

7계층의 어플리케이션간의 접속을 유지시켜주고 종료를 시켜주는 역할을 합니다.

출발지와 목적지의 어플리케이션간 데이터의 흐름이 이어지면 유지시키고, 데이터의 흐름이 일정시간 동안 이루어지지 않을 경우 서로의 보안을 위해서 연결되어있던 논리적인 경로를 차단 종료 시킵니다.

SSH(Secure Shell) - 네트워크상 다른 PC에 로그인 하거나 원격시스템에 명령을 실행하고, 다른 시스템으로 파일을 복사해주는 프로토콜입니다.

 

RPC(Remote Procedure Call) - 네트워크 상의 다른 PC에 위치하고 있는 프로그램에 서비스 를 요청하는데 사용합니다.

 

 

* 4계층 Transport (전송계층)

 

4계층부터 실질적인 데이터흐름에 관련된 계층입니다.

4계층에서는 TCP/UDP를 사용하여 포 트번호를 이용한 서비스를 식별하고, TCP를 이용한 경우 오류 검출시 흐름제어도 가능합니다.

TCP와 UDP에 관련된 내용은 뒤에서 좀 더 다루어보도록 하겠습니다.


프로세스 수준 주소 지정 - 전송 계층에서의 주소지정은 소프트웨어 프로그램을 구분하는데 쓰입니다.

이 기능으로 인해 여러 소프트웨어 프로그램이 동시에 네트워크 계층 프로토콜을 이용할 수 있습니다.

 

다중화와 역다중화 - 프로세스 수준 주소를 이용하여, 송신 장비의 전송 계층 프로토콜은 여러 어플리케이션 프로그램이 보내고자 하는 데이터를 다중화하여 하나의 데이터 스트림으 로 결합할 수 있습니다.

그리고 이 데이터를 수신한 측의 전송 계층 프로토콜은 입력 데이 터그램 스트림을 역다중화하여 각 데이터를 적절한 수신 어플리케이션 프로세스로 전달할 수 있다.

 

단편화, 패키징, 재조합 - 전송 계층은 출발지 머신에서 네트워크로 대량의 데이터를 송신할 때 데이터를 단편화한다. 단편화된 데이터를 받은 목적지 머신은 그 데이터를 재조합합니다.

 

연결 수립, 유지, 종료 - 전송 계층 연결형 프로토콜은 연결을 수립하고, 데이터를 전송하는 동안 연결을 유지하고, 더 이상 필요하지 않을 때 연결을 끊는데 필요한 일련의 통신과정을 책임집니다.

 

승인과 재전송 - 송신 장비는 데이터를 보낼 때마다 타이머를 시작시킵니다.

그 데이터를 받은 수신자는 송신자에게 성공적인 전송을 나타내는 승인 정보를 보낸다.

 

 흐름 제어 - 이 기능은 통신에 참여하는 한 장비가 다른 장비에게 데이터 송신율을 낮추도 록 요구하여 송신자와 수신자의 속도 차이를 파악하고 해결할 수 있도록 한다.

 


* 3계층 Network (네트워크 계층)

 

논리적인 주소를 기초로 출발지부터 목적지까지의 최적의 경로를 결정하고, 전달합니다.

이 과정을 ‘라우팅’이라하고, L3 Switch와 Router를 사용해 IP, IPX등 프로토콜들을 통해 그 경로를 결정하게 됩니다.

데이터그램 캡슐화 - 네트워크 계층은 보통 상위 계층에서 받은 메시지에 네트워크계층 헤더를 붙여 캡슐화하여 데이터그램(=패킷)을 만듭니다.

 

논리적 주소지정 - 네트워크에서 통신하는 모든 장비는 물리적 위치에 관계없이 장비를 식별하기 위한 논리적 주소를 가지고 있다.

이것을 3계층 주소라고 부르기도 합니다.

 

단편화와 재조합 - 그래서 네트워크 계층에서 보내고자 하는 데이터의 크기가 너무 크면, 네트워크 계층은 패킷을 단편화해서 데이터링크 계층으로 보내야 하고, 단편화된 패킷을 목 적지 머신의 네트워크 계층에서 재조합합니다.

 

에러처리와 진단 - 네트워크 계층은 논리적으로 연결된 장비들이 네트워크나 장비 상태 정 보를 교환할 수 있도록 하는 특수 프로토콜을 사용합니다.

 


* 2계층 Data-Link (데이터링크 계층)

 

1계층에서 송수신되는 정보의 오류와 흐름을 관리하고, 헤더를 통해 오류를 감지하여 재전송할 수 있는 기능을 가지고 있습니다.

LAN/WAN 프로토콜을 사용하고, 장비는 스위치를 주로 사용합니다.


매체 접근 제어(MAC) - 장비가 네트워크 매체에 대한 접근을 통제하는데 사용하는 절차를 가르킵니다.

많은 네트워크는 공유 매체(단일 네트워크 케이블, 또는 하나의 가상 매체와 전 기적으로 연결된 케이블 모음)를 이용하기 때문에 충돌을 피하기 위해 매체를 관리하기 위 한 규칙이 필요합니다.

예를 들어 매체 접근 제어를 위해 이더넷은 CSMA/CD를 이용하고 토큰 링은 토큰 전달 방법을 이용합니다.

 

논리적 연결 제어(LLC) - 네트워크의 로컬 장비 간 논리적 연결을 수립하고 제어하는데 필 요한 기능을 가리킨다.

이것은 보통 하위 계층으로 간주 된다.

즉 LLC는 상위에 있는 네트 워크 계층에게 서비스를 제공하며 데이터 링크 계층의 세부적인 사항을 감춰서 서로 다른 기술이 상위 계층과 쉽게 결합될 수 있도록 한다.

 대부분의 LAN 기술은 논리적 연결 제어에 IEEE 802.2 LLC 프로토콜을 이용한다.

 

 에러 탐지와 처리 - 데이터 링크 계층은 네트워크 스택의 하위 수준에서 발생하는 에러를 처리한다.

예를 들어 순환 잉여 검사(CRC, cycle redundancy check) 필드는 프레임의 컨텐 츠를 이용하여 계산되고 다시 프레임 내부에 저장된다.

이 필드는 수신 스테이션이 데이터 의 오류를 탐지하는데 쓰인다.

 


* 1계층 Physical (물리계층)

 

데이터를 전기적 신호로 변환하거나, 전기적신호를 데이터로 변환하여 데이터를 전송합니다.

만약 데이터가 전송이 안 될 경우 1계층부터 7계층까지 순서대로 어디서 잘못되었는지 확인하며 나아가야합니다.

 

하드웨어 명세 정의 - 케이블, 커넥터, 무선 라디오 송수신기, 네트워크 인터페이스카드, 기 타 하드웨어 장비 동작의 세부사항은 일반적으로 물리 계층의 기능입니다.

 

데이터 송신과 수신 - 데이터를 적절히 인코딩한 다음 물리 계층은 실제로 데이터를 송신하고, 역으로 그 데이터를 수신합니다.

 

토폴로지와 물리 네트워크 설계 - 물리 계층은 여러 하드웨어 관련 네트워크설계 문제를 다룹니다. (예: 근거리 네트워크와 원거리 네트워크 등)

 

인코딩과 신호 - 전송 물리계층은 컴퓨터나 기타 장비에 존재하는 비트 데이터를 네트워크를 통해 전송하기 위한 신호로 인코딩하거나 변환합니다.

 

 

 

'network 이론 > basic network' 카테고리의 다른 글

TCP/IP model  (0) 2016.09.06
TCP / UDP  (0) 2016.09.03
NAT ( Network Address Translation )  (0) 2016.08.31
DNS(Domain name System)  (0) 2016.08.31
ARP  (0) 2016.08.07