LAN(Local Area Network)와 이더넷 (Ethernet)이란?
이더넷은 가장 대표적인 컴퓨터 네트워크 기술 중 하나로 가정이나 건물과 같은 로컬 환경 내의 컴퓨터 및 기타 장치들을 네트워크에 연결하기 위해 개발된 통신 표준이라고 한다.
로컬 환경은 LAN(Local Area Network)이라고 정의되며, LAN은 네트워크 내의 여러 장치를 연결하여 다른 사람들과 정보를 작성, 저장 및 공유할 수 있습니다.
이러한 로컬 환경은 비교적 가까운 거리에 위치한 소수의 장치들을 서로 연결한 네트워크를 의미한다.
이더넷은 근거리 통신망(LAN)을 대표하는 기술이며, 네트워크를 구성하는 방식 중 하나의 방법이다. LAN에 속한 각각의 기기들은 MAC 주소를 갖게 되며, 이를 이용해 호스트 간에 데이터를 주고받는 방식을 차용한다.
MAC 주소
MAC 주소는 네트워크 하드웨어를 식별하는 주소이며, 각 기기마다 고유하게 할당된다.
e.g. AB-CD-EF-12-34-56
MAC 주소는 '제조사 코드 + 기기 고유 코드' 형식으로 만들어진다고 함.
네트워크 중심 (Network Core)
network core는 source host에서 destination host로 사용자의 message(packet)을 전달하는 것을 목표로 하는 네트워크의 구성 요소이다.
packet의 전송 방식은 두 가지이다.
- packet switching
- circuit switching
Circuit Switching
주로 전화 네트워크에서 사용하는 전송 방식이다. 반드시 user의 call이 있어야 전송이 시작되며 이러한 방식을 call-setup 방식이라고 한다.
call-setup 단계에서 source - destination 사이의 경로 결정 및 경로 형성을 위한 resources를 reserve 하는 작업을 수행한다.
미리 자원을 분할하고, 요청이 들어오는 경우 분할된 자원 중 남은 자원을 할당해주는 방식으로 resources를 제공한다.
Resources 분할 방식
- FDM (Frequency Domain Multiplexing)
- TDM (Time Domain Multiplexing)
FDM
frequency domain으로 자원을 나눈다.
TDM
time domain으로 자원을 나눈다.
Packet Switching
전화 네트워크 상에서의 통신은 circuit switching 방식이 적합할 수 있으나, 새롭게 등장한 인터넷 통신에는 continuous한 통신이 아닌 request가 올 시에만 대량의 데이터가 발생한다는 특징 때문에, 더 이상 circuit switching 방식이 적합하지 않아 (자원의 낭비가 심함), packet switching 방식이 등장하게 되었다.
- Packet Swtiching은 no call-setup, no resource reserved. 이 말은 user의 요청 없이 전송 시작이 가능하며, 미리 자원을 예약하지 않아도 할당받을 수 있음을 의미한다.
- 전달할 데이터가 있는 경우 link 대역폭 전체를 사용해서 전송한다. (each packet transmitted at full link capacity)
- host가 data를 packets 단위로 쪼갠 뒤에 packet 단위로 전송
- 다른 host에 의해 전송이 불가한 경우, 전송이 끝날 때까지 대기한 뒤에 전송을 하는 구조로 동작한다.
- 각각의 packet은 목적지 주소(ip address + port number)를 가지고 있으며, 각 router(분기점의 역할)에서 packet의 목적지 주소를 기반으로 다음 경로(router 또는 switch)를 선택해준다.
- 이때, 목적지를 확인하기 위해서는, 전체 packet을 모두 수신 완료해야 하기 때문에 "저장한 후에 전송을 한다."라고 해서 'store and forward' 방식이라고도 부른다.
큐잉 지연 (queueing delay)과 패킷 손실 (packet loss)
패킷 스위치는 출력 버퍼를 가지고 있으며, 링크로 송신하려는 패킷을 저장하고 있다.
패킷이 전송하려고 하는 링크가 다른 패킷을 전송 중인 경우 도착한 패킷은 해당 출력 버퍼에서 앞선 패킷의 전송 완료 시점까지 대기한다.
이때, 패킷은 출력 버퍼에서 큐잉 지연(queueing delay)을 겪게 됨
출력 버퍼 공간이 유한하기 때문에, 대기 중인 패킷이 꽉 채우는 경우가 발생할 수 있는데 이때, 새롭게 패킷이 출력 버퍼에 담기려 하는 경우 패킷 손실(packet loss)이 발생한다.
Internet Structure
인터넷은 네트워크의 네트워크(network of networks) 구조를 갖기 때문에, 매우 복잡하다.
수 백만개의 access networks가 인터넷상에 존재하고, 이를 fully-connected 방식으로 연결하게 되면, 매우 비효율적으로 연결되기 때문에 이를 해결하기 위해 인터넷상에는 ISP라는 것이 존재한다.
ISP (Internet Server Provider)
ISP는 개인 또는 기업체에게 인터넷 접속 서비스를 제공하는 회사를 뜻한다. 한국에는 대표적으로 KT, LG U+, SK브로드밴드 등이 있으며, 인터넷은 이러한 ISP들이 상호연결(interconnection)된 구조이다.
ISP의 규모에 따라서 global ISP, regional ISP, instituitional ISP 등의 이름으로 구분된다.
IXP (Internet Exchange Point)
인터넷 교환 지점이라고 불리며, ISP끼리 연결해주는 물리적 위치를 의미한다. (따라서 서로 다른 네트워크의 edge에 위치하게 된다.)
간단하게 말하자면, 인터넷 트래픽이 교환되는 통신 센터라고 할 수 있습니다.
Content Provider networks
Google, Microsoft 같은 대규모의 회사들이 자체적으로 services, contents를 제공하는 네트워크를 운영하는데 이를 content provider network라고 부른다.
전 세계에 위치한 데이터 센터에 연결되어 content를 연결하지만, 한계가 있기 때문에 1 tier ISP에 연결되어있다. (하지만, 1 tier ISP에 의존적이지는 않다고 한다.)
References
이미지 출처
IXP 개념
'BackEnd' 카테고리의 다른 글
[모든 개발자를 위한 HTTP 웹 기본 지식] 1. 인터넷 네트워크 (0) | 2022.11.28 |
---|---|
CS study 개념정리 (3) - Transport Layer(1) (0) | 2022.11.18 |
CS study 개념 정리 (1) - 네트워크 구성 요소 (0) | 2022.11.04 |
문자열 encoding에 대한 정리, UTF-8이란?? (0) | 2022.11.01 |
pug 템플릿 엔진(template engine) 정리 및 요약 (0) | 2022.09.29 |
댓글