"Network"란 "Net"와 "Work"의 합성어로, 

여러 디바이스(Network Edge, Network Core)들이 통신 기술을 이용하여 그물망처럼 연결된 것을 의미한다.

 

 

LAN vs. WAN 

Network는 사이즈 혹은 범위에 따라 2가지로 분류할 수 있다.

  • LAN(Local Area Network)
  • WAN(Wide Area Network)

 

LAN(Local Area Network) 

"LAN"은 학교, 회사, 가정과 같이 특정 지역을 범위로 하는 네트워크이다. 

쉽게 말해 우리가 집에서 쓰는 WiFi가 LAN의 일종이다.

 

두 디바이스가 통신하기 위해서는 케이블로 연결되어 있어야 한다. 

하지만, 현실세계에서 효율적으로 연결하기 위해서는 적은 수의 케이블로 많은 디바이스를 연결할 필요가 있다. 

 

다음과 같은 구조는 LAN내의 모든 디바이스를 연결할 수 있지만, 회선이 많이 필요하게 된다.

즉, 비용이 많이 든다.

 

Switched LAN

"Switched LAN"은 Switch라는 장비에 다음과 같이 Device를 할당하는 방식으로,

Switch라는 장비가 데이터를 알맞는 Device에 보내준다.

이렇게 디바이스별로 하나의 회선을 갖는 것을 "point-to-point"방식이라 부르며, 

현대 LAN 구조에서 주로 쓰는 방식이다.

 

Ethernet과 같은 "Wired LAN"의 경우는 Switch 장비가 허브가 되고, 

WiFi와 같은 "Wireless LAN"의 경우 Switch 장비는 WiFi 공유기가 된다. 

 

WAN(Wide Area Network)

LAN은 지역적으로만 네트워크를 구축할 수 있다. 

하지만, 현대에서는 국내 혹은 해외에도 메시지를 보낼 수 있다. 

 

즉, 전세계에 퍼져있는 LAN들을 연결할 필요가 있으며, 이를 연결한 거대한 네트워크가 "WAN"이다.

이러한 복수의 통신망을 연결시킨 구조를 internet이라 부른다. 

internet은 아래와 같이 복수의 통신망을 연결시킨 구조를 의미하며, 
Internet(인터넷)은 TCP/IP 프로토콜 기술을 사용한 통신 네트워크를 의미한다.

 

 

 

Network 구성요소 

Network는 다음과 같이 구성된다. 

  • Network Edge 
  • Network Core
  • Access Network

 

Network Edge

End System으로 Network의 가장 외각 부분을 의미한다.

 

쉽게 말해, 클라이언트나 서버와 같이

사용자들이 직접 접근하고 사용하는 지점으로

스마트폰, PC, 웹서버이다. 

 

Network Core

앞선 WAN구조에서 다시 살펴보면,

LAN에서는 Switch라는 장비에 연결되어 있으면 서로 통신할 수 있다.

 

하지만, 멀리 떨어진 장비에 데이터를 보내고 싶다면, 

즉, 다른 LAN에 데이터를 보내고 싶다면, 다음과 같은 과정이 필요하다. 

  • LAN과 LAN을 연결해야 한다.
  • 최적의 경로로 데이터를 전송해야 한다.

 

 

"LAN과 LAN의 연결"은 모든 LAN끼리 1:1로 연결하게 된다면, 엄청난 비용이 발생할 것이다. 

따라서, LAN에서 Switch와 같은 적절한 LAN으로 보내줄 수 있는 장비가 필요하다. 

 

이는 Router라는 장비가 담당하는데, 

"Router"는 네트워크간의 경로(Route)를 설정하고 가장 빠른 길을 찾아주는 장비이다.

 

즉, Router는 최적의 경로로 찾아주고, 이 Router와 LAN을 연결하여 LAN끼리 통신할 수 있게 된다. 

여기서 "Network Core"는 이러한 Router가 얽혀있는 구조라 보면 된다. 

 

즉,  "Network Core"는 Netwok의 중심 부분으로,

LAN과 LAN을 연결하여

데이터에게 목적지를 찾아주는 핵심적인 역할을 한다.

 

이러한 "Network Core"는 ISP에 의해 제공된다.

ISP(Internet Service Provider)는 KT, SKT등과 같이 인터넷 서비스를 제공하는 업체이다. 

우리는 KT인터넷 서비스를 신청하고 LAN선을 연결하면 인터넷을 이용할 수 있다. 

즉, 다른 LAN으로 데이터를 전송할 수 있다. 

 

Access Network

"Access Network"는 Network가 Edge가 Network에 접속하는데 사용되는 Network의 일부이다.

 

Network Edge가 다른 LAN에 데이터를 전송하기 위해선, Router와 연결되어야 하는데,

이러한 연결을 Access Network라 부른다.

 

즉, Network는 Network Edge간의 데이터 전송을 위해, 

통신기술을 통해 그물망 처럼 연결된 형태를 의미한다. 

 

 

OSI 7계층 

Network에선 서로 통신할 수 있도록 하려면 공통된 통신 규약이 필요한데, 이를 "Protocol"이라 부른다.

만약 이러한 통신규약이 표준화되지 않는다면, 규격이 맞는 Network Edge끼리만 통신이 가능하게 되는 문제점이 발생한다. 

 

따라서, 통신 규약인 "Protocol"을 국제적으로 표준화할 필요가 있는데, 

이를 표준화 한것이 국제 표준화 기구인 ISO에서 발표한 "OSI(Open System Interconnection) 7계층 모델"이다.

즉, "OSI 7계층 모델"은 통신규약인 Protocol 디자인과 통신을 표준화 한것이며, 

이를 7계층으로 나누어 설명한다.

 

각 계층은 하위 계층의 기능만 이용하고, 상위 계층에 기능을 제공한다. 

따라서, N번째 계층에서 문제가 생긴다면 1~N-1번째에 문제가 발생했다는 뜻이기 때문에, 유지보수 측면에서 용이하다. 

또한, 특정 계층을 교체하는 것은 Input Output 규격만 맞추면 되기 때문에 변경에 용이하다.

 

 

TCP/IP Protocol 

현대는 OSI 모델이 아닌, TCP/IP 프로토콜을 많이 사용하고 있다. 

이 TCP/IP 프로토콜이라는 통신 기술을 연결한 네트워크를 Internet(인터넷)이라 부른다.

앞서 internet와 Internet은 다르다 설명하였는데, 
internet은 단순 WAN이고, 
WAN에서 TCP/IP 프로토콜이라는 통신기술을 사용하게 되면 Internet이다 부른다.

 

vs. OSI 7계층

OSI 모델은 Protocol 디자인의 표준화이고, 
TCP/IP는 Protocol이다. 

또한, TCP/IP 프로토콜은 OSI 모델의 표준을 준수하지 않는다.

 

TCP/IP 프로토콜은 OSI 모델과 같이 계층구조로 이루어져 있으며, 5계층으로 분리된다.

Network Access Layer 

Network Access Layer은 OSI의 물리계층과 Data Link 계층으로 대응된다..

Physical Layer 

"물리계층"은 물리적(전기적)인 신호가 오가는 계층이며, 전송 매체는 통신 케이블이다. 

 

디지털신호인 "비트" 단위로 데이터를 주고 받지만, 실제로 전송되는 전기적 신호는 아날로그 신호이다. 

따라서, 물리 계층은 디지털 신호에서 아날로그 신호로 Decoding, Encoding 할 수 있어야 한다

 

이 계층은 데이터를 비트 단위로 전달할 뿐, 오류 제어나 데이터의 종류에는 신경쓰지 않는다.

 

이러한 물리계층 모듈은 주로 HW적으로 구현되어 있으며, 

해당 계층만 포함된 장비는 대표적으로 모뎀, 허브, LAN 카드 등이 있다.

 

Data Link Layer 

LAN에서 Switch는 적절한 디바이스로 보내줄 필요가 있는데, "데이터 링크 계층"이 담당하게 된다.

적절한 디바이스를 찾기 위해 데이터 링크 계층은 "MAC 주소"를 통해 통신하게 된다.

 

이러한 MAC 주소는 디바이스마다 전세계적으로 고유하게 할당된다.

 

또한, 데이터 링크 계층은 Flow, Error, Congestion Control 기능을 제공한다. 

  • Flow Control : 송신자와 수신자사이에 데이터를 처리하는 속도 차이를 해결하기 위해 제어한다.
  • Error Control : CRC를 통해 오류를 체크하며, 오류가 발견되면 해당 데이터를 폐기한다.
  • Congestion Control : 동시에 데이터를 보내게 되면 출동이 발생하는데, 발생하지 않도록 제어한다.

즉, 데이터 링크 계층은 MAC 주소를 통해 Point-to-Point간의 데이터를 전달하며,

Flow, Error, Congestion Control을 통해 신뢰성있는 정보를 전달한다.

 

해당 계층에는 대표적으로 Ethernet, WiFi Protocol이 존재한다.

 

Internet Layer

"Internet Layer" OSI의 Network Layer에 대응되며, 데이터를 최적의 경로를 찾아 목적지까지 전달한다. 

Router가 Network Layer의 대표적인 장비이다.

 

"Access Network Layer"는 같은 LAN 상에서 MAC 주소를 통해 수신할 디바이스를 찾는다. 

 

만약, WAN에서도 MAC주소를 통해 통신하게 된다면, Router는 MAC 주소를 다 가지고 있어야 한다.

즉, Router가 가지고 있어야 할 주소 정보가 너무나 많아지게 될 것이다. 

 

하지만, Router디바이스가 속한 LAN만 찾고

LAN내에서는 Switch 장비가 MAC주소를 찾게 된다면, 

더 효율적으로 라우팅할 수 있게 된다.

 

따라서, Interent Layer에선 "IP주소"를 사용한다.

이와 같이 Router는 IP주소를 찾아 LAN을 찾고,

LAN 내부에선 MAC주소를 통해 적절한 디바이스로 전달한다. 

 

Internet Layer는 신뢰성보다는 성능 중심(Best-Effort)서비스를 제공한다.

Internet Layer는 End-to-End간의 연결을 하여 정해진 경로로 데이터를 보내는 것이 아닌,

IP주소를 통해 그때 그때마다 최적의 경로로 전송해준다. 

이러한 전송 방식을 "Connection-Less"가 부른다.

 

이러한 특성 때문에 첫번째 데이터와 두번째 데이터가 목적지가 같더라도, 다른 경로로 이동할 수 있고, 

도착한 데이터의 순서가 뒤죽박죽이 될 수 있다. 

 

 

Transport Layer

"Transport Layer"은 서로 다른 Host(Network Edge)에서 동작하는 "프로세스"들 사이에

논리적인 통신(Logical Communication)을 제공한다.

논리적인 통신이란,
애플리케이션 관점에서 실제로 떨어져 있지만, 
직접 연결된것 처럼 보이게 해준다는 것을 의미한다. 
실제로 카톡으로 친구와 대화를 하게 되면, 어떻게 전달되는지는 모른다. 
이러한 통신을 논리적 통신이라 부른다. 

 

Internet Layer는 "Host"간의 논리적인 통신을 제공했다. 

하지만, 스마트폰, PC에는 여러 프로세스들이 존재하기에, 

프로세스들은 "Port" 번호로 구분된다. 

 

이러한 Transport Layer에는 2가지 Protocol이 존재한다. 

  • TCP(Transmission Control Protocol) 
  • UDP(User Datagram Protocol)

 

TCP

TCP는 안정적으로 데이터를 전달해주는 프로토콜이다. 

앞서, IP는 IP주소에 적힌 대로 전송만 할 뿐, 신뢰성은 제공하지 않는다. 

하지만, TCP는 "Connection-Oriented"방식으로 

End-to-End간의 미리 연결을 설정한다.

 

이를 통해, 데이터의 순서를 보장하고, 데이터가 중간에 누락되면 재전송을 요청한다. 

이외에도 Error, Flow, Congestion Control 기능을 제공한다.

UDP

반면, UDP는 안정적으로 데이터를 전달해주지 않는다.

즉, "Connection-Less"방식으로 데이터의 순서와 무결성을 보장하지 않는다.

이러한 특성 때문에, TCP에 비해 속도는 빠르다는 장점이 있다.

 

대표적인 예시로는 인터넷 기반 전화 서비스가 있는데,

전화의 경우 조금 소리가 손실되더라도 속도가 중요하므로 UDP가 사용되는 경우가 많다.

 

Application Layer

우리가 실제로 사용하는 서비스들이 Application Layer에 포함된다. 

대표적으로 HTTP Protocol이 있다.

 

 

References

위키백과 

복사했습니다!