Computer Science/Network

Computer Science/Network

[데이터통신 - 12] 데이터통신 전체 흐름

전체 흐름 데이터 통신의 전체 흐름과 OSI 각 계층에서 무슨 일이 일어나는지 살펴보자. 이 글에서의 데이터통신은 표준 프로토콜인 OSI 7계층을 기반으로 하며 2계층에서는 Ethenet을 3계층에서는 IP를 4계층에서는 TCP를 사용한다고 생각한다. OSI 각 계층의 핵심 기능은 아래와 같다. 응용 계층(세션, 표현 계층 포함) : 응용 계층의 프로토콜 정의 전송 계층 : 종단 간 데이터 전송의 오류 제어, 흐름 제어 네트워크 계층 : 라우팅 데이터링크 계층 : 네트워크 장비 간의 오류 제어, 흐름 제어 물리 계층 : 비트 변환, 비트 전송 네트워크 구성도 아래의 네트워크가 있다. 총 세 개의 사설 네트워크 192.168.1.0/24, 192.168.10.0/24 ,172.168.0.0/16로 구성되어..

Computer Science/Network

[데이터통신 - 11] 응용 계층

응용 계층 OSI 7계층인 응용 계층은 응용 프로그램 간의 프로토콜, 즉 응용 계층의 프로토콜을 정의하기 위한 계층이다. 응용 프로그램 간의 통신은 응용 계층의 프로토콜에 맞춰 이루어진다. 여기서의 응용 계층은 세션 계층과 표현 계층을 포함하는 것으로 생각하도록 하자. 응용 계층의 프로토콜 HTTP, HTTPS, FTP, SMTP, DNS 등의 프로토콜이 응용 계층의 프로토콜이다. HTTP, HTTP는 웹 서버와 웹 클라이언트 간의 프로토콜이며 FTP는 FTP 서버와 FTP 클라이언트 간의 프로토콜이다. 이렇듯 통신을 하는 응용 프로그램은 하나 이상의 응용 프로토콜을 정의하고 사용한다. 또한 OSI 1,2,3,4 계층은 보안 기능(암호화, 인증)을 제공하지 않기에 보통 응용 계층에서 보안 기능을 제공한다.

Computer Science/Network

[데이터통신 - 10] 전송 계층

전송 계층 OSI 4계층인 전송 계층은 종단 간의 데이터 전송을 위한 계층이다. 네트워크 계층이 데이터를 최적의 경로로 다른 네트워크로 보내준다면 전송 계층은 종단 간의 데이터 전송이 원활하게 되도록 제어한다. 핵심 기능 : 종단 간 데이터 전송의 오류제어, 흐름제어 오류 제어와 흐름 제어 전송 계층의 핵심 기능은 종단 간 데이터 전송의 오류제어와 흐름제어이다. 오류제어와 흐름제어 덕분에 우리는 신뢰성 있는 통신을 할 수 있다. 그런데 2계층인 데이터링크 계층의 핵심 기능도 인접한 노드(네트워크 장비)간의 오류제어와 흐름제어다. 왜 비효율적으로 같은 작업을 반복할까? 예를 들어 아래의 상황이 발생하면 오류를 감지하고 오류 회복 기능이 수행되어야하지만 데이터링크 계층은 아래 상황 발생 시 어떠한 오류도 감..

Computer Science/Network

DMZ

DMZ (DeMilitarized Zone) 회사의 LAN(내부망, 사내망)은 보안을 위해 네트워크 내에 방화벽과 DMZ를 둔다. 방화벽은 미리 정의된 보안 규칙에 따라 패킷의 송수신을 결정하는 네트워크 보안 시스템이다. 그리고 DMZ는 외부망과 내부망 사이에 위치한 네트워크 영역(서브넷)이다. 외부, 내부에서 DMZ로 접근할 수 있다. 왜 DMZ를 둘까? 회사의 웹서버, 메일서버, DNS 서버등은 내부에서만 사용할 수도 있지만 외부에서의 접근이 필요할 수도 있다. 회사의 웹서버나 메일 서버를 외부에 공개할 때 필요하다. 하지만 내부망 전체를 외부에 공개해서는 안된다. 특히 파일 서버, DB 서버가 외부에 노출되어 서버의 제어권을 뺏기면 심각한 일이 일어난다. 그래서 외부에 공개할 서버는 DMZ에 두고 ..

Computer Science/Network

사설망, NAT

사설망 (Private Network) 사설망은 사설 ip 주소를 사용하는 네트워크이다. 사설 ip 주소는 오직 사설망(내부망)에서만 사용이 가능하며 공인망(외부망)에서는 사용이 불가능하다. IPv4의 공인 ip 주소가 부족하니 오직 사설망에서만 사용가능한 주소인 사설 ip 주소를 사용하는 것이다. 공인 ip 주소가 전세계에서 유일해야한다면 사설 ip 주소는 사설망 안에서만 유일하면 된다. 사설 ip 주소 대역은 아래 표와 같이 정해져있다. NAT (Network Address Translation) IP 패킷의 ip 주소, 포트 번호를 변환시키면서 라우터를 통해 패킷을 주고받는 기술을 NAT이라 한다. 사설 ip 주소는 공인망에서 사용할수 없다. 그래서 NAT을 사용해 패킷이 공인망으로 나갈때 사설 i..

Computer Science/Network

[데이터통신 - 9] 네트워크 계층 (2)

서브넷 네트워크를 클래스로 구분하다보니 아래의 문제들이 발생했다. A라는 회사에서는 만개의 호스트 ID가 필요하다. C클래스의 호스트 ID개수는 254개라 어쩔 수 없이 B클래스를 할당받았지만 B클래스의 호스트 ID개수는 약 6만개로 5만개의 ip 주소가 사용되지 않는다. 즉 ip 주소 낭비가 발생한다. A 또는 B클래스를 할당받은 대규모 네트워크에서는 브로드캐스트 전송 시 많은 트래픽이 발생한다. 이런 문제들로 클래스로 구분해놓은 네트워크를 다시 여러 네트워크로 구분하는 기술인 서브넷팅이 나왔고 서브넷팅으로 분할된 네트워크를 서브넷이라 한다. 네트워크를 여러 서브넷으로 분할해 네트워크 마다 원하는 만큼의 ip 주소를 할당받을 수 있어 ip 주소 낭비를 막으며 브로드캐스트 전송 시 트래픽을 줄인다. 서브..

Computer Science/Network

[데이터통신 - 8] 네트워크 계층 (1)

네트워크 계층 OSI 3계층인 네트워크 계층을 알아보자. 네트워크 계층은 서로 다른 네트워크에 있는 목적지로 데이터를 전달하기 위한 계층이다. 앞의 데이터링크 계층글에서 LAN은 데이터링크 계층의 이더넷으로 구축되었다고 언급했다. 그래서 LAN 내에서(하나의 네트워크 안에서) 데이터링크 계층만으로도 통신이 가능하다. 하지만 LAN과 다른 LAN이 통신하려면 추가적인 기능, 프로토콜이 필요하다. 이 기능을 네트워크 계층이 제공한다. 네트워크 계층 핵심 기능 : 라우팅 라우터 LAN과 다른 LAN이 통신하려면 네트워크 계층의 장비인 라우터가 필요하다. 라우터는 IP 헤더의 목적지 주소를 보고 최적의 경로를 찾아주는 라우팅 기능을 제공한다. LAN에 라우터가 연결되어 있어야만 데이터를 다른 네트워크로 보내거나..

Computer Science/Network

[데이터통신 - 7] 이더넷

등장 배경 복사기 사업을 하는 제록스 사는 여러 대 컴퓨터와 복사기를 연결시키려는 연구를 시도하고 제록스 파크 연구소에서 로버트 멧칼프 등에 의해 연구가 진행되었다. 1980년대 첫 이더넷 상용제품이 소개되었으며 이후 DEC, 인텔, 제록스 3개 회사가 힘을 합쳐 DIX라는 표준을 만들게 되고 이를 바탕으로 1983년 IEEE 802.3 표준이 제정되었다. 이더넷 등장 배경을 보면 이더넷은 여러 단말 장치를 연결시키는 기술이라는 것을 알 수 있다. 이더넷을 통해 LAN을 구축하게 되고 지금에 이르러서는 거의 모든 LAN이 이더넷으로 구축되었다. 때문에 이더넷은 이더넷 프로토콜로 구축된 LAN, 즉 MAC 프로토콜로 CSMA-CD를 사용하는 버스 구조의 LAN이라고도 할 수 있다. 이더넷 구조 초기 이더넷..

gunjoon98
'Computer Science/Network' 카테고리의 글 목록