본문 바로가기

컴퓨터 과학

네트워크와 프로토콜 (1)

컴퓨터 하면 빠질 수 없는 내용 중에는 네트워크가 있다. 분산되어 있는 컴퓨터를 통신망으로 연결한 것을 네트워크라고 하는데 이 컴퓨터들은 노드 간 연결을 이용하여 서로 데이터를 교환한다. 네트워크는 두 대 이상의 연결된 컴퓨팅 장치의 그룹을 말하며, 네트워크 안에는 또 다른 작은 네트워크를 포함하기도 한다. 하나의 네트워크에 있는 모든 장치는 중앙에 있는 하나의 허브에 연결된 경우가 많다. 이 두 장치는 서로 직접 연결 여부와 관계없이 하나의 장치가 다른 장치와 정보를 교환하는 영역에 있을 때 망으로 묶인다. 네트워크 계층 모델은 총 7가지로 나뉘는데

TCP/IP 모델을 기반으로 하며 국제 표준 기구가 제정한 OSI 7 계층 모델과 비교할 수 있다.



OSI 7계층 모델은 물리 계층, 데이터 링크 계층, 네트워크 계층, 전송 계층, 세션 계층, 표현 계층, 응용 계층 이렇게 구분할 수 있다. 그리고 TCP/IP 모델은 네트워크 접속 계층, 인터넷 계층, 전송 계층, 응용 계층 이렇게 4개로 구분할 수 있다.

OSI 7계층 모델은 순서가 앞에서부터 뒤로 단계로 구분할 수도 있다. 물리 계층은 이 단계 중 가장 낮은 첫 번째 계층으로, 네트워크의 높은 수준의 기능의 논리 데이터 구조를 기초로 하는 필수 계층이다. 물리 계층은 한 네트워크에서 기본 네트워크 하드웨어 전송기술들로 이루어져 있다. 수많은 하드웨어 기술이 이 계층에서 접목되어 있기 때문에 가장 복잡한 계층으로 볼 수 있다. 하드웨어 장비는 여러 가지가 있지만 대표적인 예로 네트워크 어댑터, 리피터, 네트워크 허브, 모뎀 등이 있다.



데이터 링크 계층은 장치 간 신호를 전달하는 물리 계층을 이용하여 네트워크상의 주변 장치 간 데이터를 전송하는 계층이다. 이 계층의 주요 기능은 오류 감지와 주소 할당이 있다. 오류 감지는 신호가 전달되는 동안 오류가 포함되어 있는지 감지한다. 보내려고 하는 데이터에 오류가 있으면 잘못된 데이터를 다른 컴퓨터에 보내면 안 되므로 그 데이터를 폐기하거나 확인 절차를 밟는다. 그리고 주소 할당은 물리 계층으로부터 받은 신호들이 원하는 목적지 네트워크상의 장치에 올바르게 전달될 수 있도록 한다. 



네트워크 계층은 장치와 장치 간의 연결에 관련된 일이 이 네트워크 계층에서 일어나는데 IP 패킷에 주소를 붙이고, 데이터 패킷이 취할 경로를 설정하기, 다른 네트워크의 서버가 가동 중인지 확인하기, 다른 네트워크로부터의 IP 패킷을 수신하는 기능들을 한다. 패킷이랑 이해하기 위해 쉽게 설명하면 보내고자 하는 데이터의 정보들을 담아놓은 편지라고 생각해 보면 이해하는 데 도움이 될 것이다. 이 정보에는 IP 주소, 데이터의 양, 패킷 전체 크기, 출발지, 목적지, 암호화된 정보 등 다양한 것들이 들어간다. 네트워크 계층은 라우터를 이용한 패킷 포워딩을 담당한다. 네트워크 계층에서 사용되는 프로토콜은 여러 가지가 있는데 IP,IPsec,ICMP,IGMP,GRE 등이 있다.



프로토콜이란 컴퓨터와 컴퓨터 사이, 혹은 단말기 사이 등에서 정보교환이 일어날 때 이를 오류 없이 원활하게 데이터를 교환하기 위해서 정해진 여러 가지 통신 규칙과 장법에 대한 약속을 말한다. 이 통신 규약은 오류검출방식, 코드변환 방식, 통신방식, 전달 방식, 자료의 형식, 전송속도 등에 관한 약속을 말한다. 이 프로토콜은 TCP/IP 계층마다 각기 다른 프로토콜 형식을 가지고 있다.



물리 계층에는 X.25, X.21, RS-232 등이 있다.



X.25는 DTE와 DCE 간의 인터페이스를 제공하는 프로토콜로 통신을 원하는 두 단말기가 패킷 교환망을 통해 패킷을 원활히 전달하기 위한 통신 절차이다.

X.25에 대한 추가적인 정보는 다음과 같다.

ITU-T에서 제정(1976년 승인)한 국제 표준 프로토콜로 우수한 호환성을 가진다.

디지털 전송을 기본으로 하므로 전송 품질이 우수하다.

축적교환방식을 사용하므로, 전송을 위한 처리 지연이 발생할 수 있다.

한 회선에 장애가 발생하더라도 정상적인 경로로 우회 전송이 가능하다

연결형 프로토콜로 흐름제어, 오류 제어 등의 기능도 가지고 있다.



RS-232 는 DTE와 DCE 간 직렬 인터페이스 규격 안을 말하는데 보통 15m 이하 단거리 데이터 전송을 위한 직렬 인터페이스 표준규격으로써 컴퓨터와 터미널, 컴퓨터와 모뎀 등의 기기와의 접속에 사용된다.



데이터링크 계층에는 Ethernet, HDLC, PPP 프로토콜이 있다.

PPP는 Point-to-Point의 약자로 점대점 연결 프로토콜이라고도 한다. 보통 1대1로 컴퓨터를 연결하기 위해 사용되는 프로토콜이며 두 양단간에 통신하도록  도와주는 프로토콜이라 할 수 있다. 양 단말기 사이의 링크에 connection을 개설하고, 유지, 관리, 시험 및 종료하는 등의 역할을 한다. 그리고 링크를 통해서 바로 위 단계 층인 네트워크 계층의 프로토콜들을 다중화하여 복합적으로 전송하고 캡슐화해 주는 등의 기능도 한다. PPP의 세 가지 구성요소는 캡슐화, LCP, NCP로 구성된다. LCP는 Data Link를 실질적으로 제어하는 프로토콜로 커넥션을 유지, 개설, 종료하고 시험하는 역할을 한다. 다양한 옵션을 이용해 프레임의 최대 길이, 압축 여부 등을 결정하거나 매직 넘버 옵션으로 링크가 루프백 되어 있는지 검사를 수행한다.

NCP는 하나의 PPP Link 상에 여러 개의 3계층 프로토콜을 사용할 수 있으며, 각각의 프로토콜들은 이에 적합한 NCP들의 제어를 받는다. NCP는 서로 다른 3계층 프로토콜들에 대해 세부적인 제어를 하며, 데이터를 송수신할 수 있도록 설계되었다.

NCP중에서 대표적인 것으로는 IPCP가 있다. 이는 IP를 유동적으로 할당받고 IP 주소를 얻는 역할도 한다. NCP가 위에서 말한 것처럼 패킷의 압축 여부와 방식을 결정하고 Peer에게 원하는 IP 주소를 요구하는 등의 기능을 수행한다.

캡슐화는 Datagram에 여러 데이터를 추가하여 2계층의 Frame으로 맵핑하는 것을 말한다. HDLC의 Framing 방식을 기반으로 하기 때문에 HDLC의 Frame과 유사한 형식의 Frame을 사용한다.

반응형

'컴퓨터 과학' 카테고리의 다른 글

네트워크와 프로토콜 (3)  (0) 2024.01.23
네트워크와 프로토콜 (2)  (1) 2024.01.23
소프트웨어 공학  (0) 2024.01.18
컴퓨터 해킹에 대하여  (0) 2024.01.15
프로그래밍 언어  (0) 2024.01.15