#3. 네트워크 코어
"""
이 포스팅은 K-MOOC의 부산대학교 유영환 교수님의
컴퓨터 네트워킹 수업 내용을 기반으로 작성되었습니다.
"""
저번 포스팅에서는
네트워크의 엣지 부분 즉, 일반적인 사용자가 직접 맞닿고 있는 부분에 대해 포스팅했다.
이번 포스팅에서는
네트워크의 중간 부분 즉, 네트워크 코어가 어떻게 이루어져 있는지를 포스팅하고자 한다.
인터넷을 설계한 Vint Cerf가 처음 인터넷을 설계할 때 가졌던 생각은
" 핵 공격에도 살아남는 네트워크를 구축하자 "는 철학이었다.
그런 목적으로 만들어진 네트워크 구조는 Mesh( 그물 네트워크 )이다.
Mesh 네트워크는 모든 노드가 서로 연결이 되어있다.
이러한 구조를 통해, 한 개의 노드가 핵 공격에 의해 파괴되더라도,
나머지 노드들이 통신하는 데에는 아무런 문제가 발생하지 않는다.
# Network Core - Do "Data Forwarding"
- Mesh of interconnected routers
- Function
- "Data forwarding" from one router( or switch ) to the next
along the path from source to destination.
- "Data forwarding" from one router( or switch ) to the next
코어 네트워크의 기능은,
네트워크에서 데이터를 보내고 받는 노드들 ( Source, Destination ⊂ End Hosts )이
Source에서 Destination까지 정보가 전달되기 위하여 중간의 라우터들이 데이터를
전달해 주어야 하는데, 하나의 라우터에서 다음 라우터로 데이터를 포워딩해주는 기능이
코어 네트워크의 기능이다.
어떤 패킷이 코어 라우터에 도달하면,
코어 라우터는 이 패킷에 담겨져 있는 목적지(Destination) 주소를 보고
그 End Host로 도달하게 해주는 라우터로 데이터 포워딩을 해준다.
( 이는, 데이터 포워딩 기법 중 후술할 패킷 교환 방식에 해당한다. )

# 코어 라우터에서 데이터를 전달하는 방식 : Switching Mechanism
- Circuit Switching ( 회선 교환 방식 )
- Packet Switching ( 패킷 교환 방식 )
# Circuit Switching ( 회선 교환 방식 )
- End-to-End resources reserved for "call" between src & dest
- Entire data flow along the path like water.
- 데이터를 교환하기에 앞서 source와 destination 사이의 길을 설정한다.
- 그 길에 네트워크 자원을 예약해둔다.
- 마치 물통( source, destination )사이에 전용 '호스'를 연결하는 것과 같다.
- 하나의 페어, 쌍에 대해서만 자원이 할당되고, 다른 End Host는 이 자원을 공유하여 사용할 수 없다.
# Packet Switching ( 패킷 교환 방식 )
- Entire data is broken into small packets.
- Each packet has its destination address.
- Each packet is handled independently.
- 여러 개의 source들이 서로 자기의 데이터를 packet의 형태로 나누어 보낸다.
- 각 패킷에는 목적지 주소가 담겨있고, 라우터가 이를 확인하여 목적지 주소에 따라
개별적으로 취급하여 전달한다.
- 중간에 같은 링크((link)를 타고 전달되도, 라우터에 도착하면 각기 다른 End Host의
Application을 향해 가게 된다.
- 전체 데이터가 패킷이라는 단위로 나누며, 각각의 패킷의 목적지 주소는 같고, 별도로
취급한다.

네트워크 코어의 역할 ( Data Forwarding )과 라우터에서 데이터를 포워딩하는 2가지 방식
( 회선 교환 방식, 패킷 교환 방식)에 대해 알아보았으니, 이번에는 앞의 방식 두가지에 대한
구체적인 사항에 대해서 알아보자.
# Circuit Switching - Detail
- Resource is dedicated to each call
- circuite segment idle if not used by the call ( no sharing )
- Commonly used in traditional telephone networks.
- Channel allocation methods : FDM , TDM
- 각각의 콜(call)에 네트워크 자원이 할당된다.
- 여기에 할당된 자원은 설령 그 콜(call)에서 아무 데이터가 전달되지 않더라도,
다른 콜, 즉 다른 커넥션이 그것을 사용할 수 없다. ( 자원의 non-sharing : dedicated )
- 특정 두 사용자가 콜을 설정하면, 그 둘에게만 자원이 독립적/배타적으로 할당되어,
다른 사용자들이 사용할 수 없다.
- 사용 예시) 기존의 유선 전화망 : 사용자들이 아무 말을 하지 않아도 ( 아무 데이터가 흐르지 않아도 )
다른 사용자가 그 커넥션을 이용할 수 없다.
- 둘 사이의 콜을 설정한다는 것 = 채널을 할당한다는 이야기이다.
- 채널을 구성하는 수단 = 주파수( Frequency ), 시간( Time )
- FDM ( Frequency Division Multiplexing : 주파수 대역 분할을 통한 채널 설정 )
- 각각의 다른 주파수 대역에 채널을 두어 사용자가 사용하게 한다.
- 특정 주파수를 쓰던 사람이 갑자기 다른 주파수를 사용할 수 없다.
- TDM ( Time Division Multiplexing : 시간 분할을 통한 채널 설정 )
- 각기 다른 시간대에 사용자가 모든 주파수를 사용하게 하여 데이터를 보냄.
- 똑같은 시간간격으로!

# Packet Switching - Detail
- Packet is transmitted at full link capacity.
- Takes L / R seconds to transmit L-bit packet into link at R bps
- Store-and-Forward : entire packet must arrive at router before forwarded to the next
- End-to-End delay ~= n * L / R ( n : # of hops , hop : 라우터 와 라우터 사이 )
- 하나의 패킷이 전송될 때, 데이터가 전송되는 링크의 "full" link capacity(= MTU )를 사용하여 전달된다. ( 전력을 다하여 전달한다고 생각할 수 있다. )
- 어떤 패킷 ( 크기 L bit )를 End Host가 전달할 때, 링크의 capacity ( bandwidth)를 Rbps라고 하면,
전체 메시지 내용을 다음 라우터로 보내는 시간은 L / R 초이다.
- 이렇게 Router로 패킷을 전달하면, Router은 Store-and-Forward 방식으로 패킷을 전달한다.
cf) Circuit Switching 방식 - bit 단위로 물 흐르듯 데이터를 전송한다.
Packet Switching 방식 - 만약, Packet 크기가 100bit이면, 100bit를 다 받고난 뒤에서야,
다음 라우터로 포워딩한다.
이유)
① 각각의 패킷에는 목적지 주소가 있고, 라우터는 이를 확인해야 Forwarding을 진행할 수 있다.
② 패킷의 전체가 도착해야, 전체 메시지에 오류가 포함되어 있는지 검사할 수 있다.
- End-to-End Delay : 전체 End Host에서 Source에서 Destination까지의 전체 지연 시간은
hop( 기기 - 기기 사이 )의 수에 비례한다.
ex) 2 hop -> 2 * L / R , 3 hop -> 3 * L / R, n hop -> n * L / R

마지막으로, 패킷 교환망과 회선 교환망을 비교하여 정리한 뒤, 이번 포스팅을 끝내기로 하겠다.
# Switching : Comparison
- 패킷 교환망 vs 회선 교환망
- 둘 중에 뭐가 더 나은가? => 누구의 관점에서 바라보느냐에 따라 달라질 수 있다.
- Packet Switching 방식을 이용한 패킷 교환망 => ISP입장에서, 더 많은 사용자를 유치할 수 있기 때문에 더 좋다.
- Circuit Switching 방식을 이용한 회선 교환망 => 사용자 입장에서, 전용선을 공급받아 언제나 QoS( Quality of Service )를 보장받을 수 있어서 더 좋다.
- Packet Switching 방식의 경우, 여러 Source End Host로 부터 도착하는 패킷들의 전송속도가, 네트워크 자체의 MTU를 넘게되면, 패킷이 라우터의 Queue에 저장되게 되고, 이에 따른 지연 시간이 발생하고, 그리고 이러한 상황이 지속되면, 라우터 자체의 Queue가 꽉 차게 되고, 그 이후에 도착한 패킷들은 버려진다. ( packet loss가 발생. )


'컴퓨터네트워크' 카테고리의 다른 글
| #2. 네트워크 엣지 (0) | 2019.06.28 |
|---|---|
| #1. 네트워크와 인터넷 (0) | 2019.06.27 |
#2. 네트워크 엣지
"""
이 포스팅은 K-MOOC의 부산대학교 유영환 교수님의
컴퓨터 네트워킹 수업 내용을 기반으로 작성되었습니다.
"""
네트워크는 구조적으로 네트워크 엣지(Edge)와 네트워크 코어(Core)로 나뉜다.
이번 포스팅에서는 네트워크 엣지에 대한 내용을 주로 정리하고,
다음 포스팅에서 네트워크 코어에 대한 내용을 정리하고자 한다.
# 네트워크 엣지
- 인터넷의 말단 부분이다.
- 즉, 여러개의 네트워크로 이루어진 인터넷에서 말단 부분에 위치한 '네트워크'이다.
- 일반적 사용자들이 존재하고 있는, 사용자들이 직접 접하고 있는 네트워크이다.
- ex) 모바일 네트워크, 홈 네트워크, 기관 네트워크
- 인터넷의 말단 부분은 네트워크 엣지이고,
네트워크 엣지의 말단 부분은 End Host라 할 수 있다.
# 네트워크 코어
- 엣지 네트워크들을 연결해주기 위해 그들 중간에 위치한 네트워크

# 네트워크 엣지의 구성요소
- 클라이언트( Client )와 서버( Server )
- 서버 = 구글 서버, 네이버 서버... ( On-premise, Cloud )
- 데이터센터의 복수개의 서버가 존재하고, 이를 통해 하나의 서버가 문제가 발생하면, 다른 서버가 서비스할 수 있도록 처리한다.
# 네트워크 코어의 구성요소
- 라우터(Router), 스위치(Switch) ... - 엣지 네트워크를 연결해주는 중간 역할.
# 엣지 네트워크
- HW : Host ( Client + Server )로 이루어져 있다.
- End System 이라고 불린다.
- 이러한 End System을 네트워크 코어에 실제로 연결해주는 네트워크가 필요하다.
- 이를 엑세스 네트워크(Access Network)라고 한다.
# 엑세스 네트워크
- 사용자가 자신의 모바일 장치나 랩탑, 컴퓨터를 가지고 ( = Host, Device ) 네트워크에 접속하는
최초의 접속점( 이를 Edge Router 라고 한다. )과 연결시키기 위한 네트워크 - 엑세스 네트워크의 종류에는
Residential Access Networks , Institutional Access Networks, Wireless Access Networks 가 있다.

# 엑세스 네트워크의 종류
- Residentail Access Network
- 홈 네트워크
- Institutional Access Network
- 학교/회사같은 기관 네트워크
- Wireless Access Network
- 무선 전화망( Cellular Network )으로 접속 / 와이파이( Wi-Fi )로 접속
<Residential Access Netwrok>
#1. DSL ( Digital Subscriber Line)
- 기존의 전화망을 이용한 인터넷이다.
- 기존의 전화망(link) 은, 사람의 목소리( 최대 주파수 : 4kHz )를 수용하고 전달하기 위해 설계되었다.
- 알고보니, 이 link는 4kHz보다 높은 주파수도 전달할 수 있는 기능을 가지고 있다는게 밝혀졌다.
- 그러면, 4kHz보다 높은 영역의 남는 잉여 주파수에 디지털 데이터를 담아서 전달할 수 있을 것이라는
생각을 사람들이 하게되었다. - 이를 적용한 인터넷 방식이 DSL이고, 이는 최초의 가정에서 인터넷을 사용한 예이다.
- Voice over a phone line to telephone net
- Data over a phone line to the Internet
- 음성/데이터가 동일한 라인을 타고 기지국에 도착하면, 기지국에 위치한 DSL Access Multiplexer가
두 개의 웨이브(파형)을 분리하여, 저주파( 4kHz 이하, 사람 목소리 )는 전화망으로 내보내고,
고주파( 4kHz 이상, 디지털 컴퓨터 데이터)는 인터넷으로 내보낸다.

<Residential Access Network>
#2. Cable Network
- 뒤에서 다루겠지만, 케이블은 전송할 수 있는 데이터의 폭(=파형)이 넓다.
케이블 회사에서 전체 사용하고 있는 데이터 폭들을 여러 개의 서로 다른
파형을 가진 채널로 나누어서 데이터를 전달할 수 있다. - 이 채널중 일부를 인터넷 데이터를 전달하기 위한 채널로 사용한다.
- 이런 케이블 선에서 전송된 데이터를 케이블 모뎀 터미네이션 시스템(CMTS)에서
파형에 따라 나누어 인터넷을 담은 파형의 데이터를 네트워크 코어에 전달한다. - 전달하는 매체만 다를 뿐, DSL과 같은 방식으로 동작한다.

<Residential Access Network>
#3. Fiber-to-the-Home( FTTH )
- 우리나라에서 가장 일반적인 인터넷 사용 형식
- 가정의 거의 앞까지 광케이블이 깔린다.
- 광케이블은 DSL 라인 / Cable 보다 훨씬 더 전달할 수 있는 데이터 양이 많다. ( 이유는 후술할 예정 )
- 광케이블( 빛의 형식으로 데이터를 전달한다.)을 집 앞까지 끌고옴으로써 각 가정에서 사용할 수 있는 통신 용량을 최대화할 수 있다.

<Institutional Access Network>
- 기관 네트워크로, Ethernet을 기반으로 한다.
- Ethernet( 이더넷 )은 회사, 학교등에서 주로 이용한다.
- 전송속도는 시간이 가면 갈수록 발전하여 10Mbps, 100Mbps, 1Gbps, 10Gbps (bps : bits per second, 통신 속도의 단위)까지 늘어났다.
- 우리가 보통 쓰는 랜카드는 이더넷에 속한다.
- 각각의 컴퓨터에 이더넷 카드를 꽂고, 이들이 이더넷 스위치(Ethernet Switch)에 모여서
이 스위치가 실제 외부 라우터(=Edge Router)에 연결되는 형태이다. - 와이 파이로 접속한 데이터들이 모여서 이더넷 스위치로 전달될 수도 있다.
- 기관의 웹 서버/메일 서버( 일종의 Host )도 기관 네트워크에 포함되는데,
이 또한 이더넷 스위치를 통해서 외부 인터넷에 접속할 수 있다. - 많은 기관들에서, 이더넷을 기반으로한 기관 네트워크(a kind of Access Network)를 많이 이용한다.

<Wireless Access Network>
- 무선 엑세스 네트워크
- 우리가 무선으로 많이 쓰는 네트워크에는 두가지 종류가 있다.
- Wi-Fi라고 불리는 Wireless LAN
- 휴대전화망 : Cellular Network
# Wireless LAN ( Wi-Fi )
- 2003년 표준 : 802.11g ( 54Mbps )
- 2009년 표준 : 802.11n ( 450Mbps )
- 2014년 표준 : 802.11ac ( wave1 - 886.7Mbps )
- 2016년 표준 : 802.11ac ( wave2 - 1.73Gbps )
- 시간이 지남에 따라 기하급수적으로 데이터 이동 속도가 증가함을 알 수 있다.
# Cellular Network
- 3G, 4G LTE, 5G
- 3G = 1Mbps / person
- 4G = 10Mbps / person
- 5G = 100Mbps / person

예전에는 무선 네트워크가 유선 네트워크를 보조해주는 정도의 역할이었으나,
이제는 대부분의 갖어에서도 유선없이 무선으로 네트워크에 접속하는 경우도 많아졌다.
한편, Cellular Network의 경우, Wi-Fi가 공유기가 있어야만 사용가능하여, 직장/가정같은 한정된 공간에서만 사용할 수 있는데 반해, 언제 어디서든 사용할 수 있다는 점의 '이동성' 측면에서 우위를 점하고 있다. ( 물론, 데이터 전송 속도 = Transmission Rate ∝ Network Bandwidth 는 Wi-Fi가 더 빠르다. )
이 때까지 살펴본 것처럼, Edge Router를 통해 네트워크 코어에 접속하기 위한
다양한 Access Network가 존재하고, 이 Access Network에 접속하는 호스트( Host = Server + Client )를
End Host라고 한다.
# End Host
- 각각의 End Host상에는 Application Program이 돌아간다.
- Application Program은 End Host에게 다른 End host상의 Application Program과
"통신"(=데이터를 주고받는 행위)을 할 수 있게 해달라고 요청한다. - Application이 End Host에게 보내는 메시지의 크기는 작은 크기의 메시지도 있지만,
굉장히 사이즈가 큰 것도 존재한다. ( ex. 음악 : 4MB, 10MB..., 영화 : 4GB, 6GB, 8GB... ) - 큰 메시지(=데이터)를 한꺼번에 보내려고 하면, 중간에 에러가 발생하여,
그 데이터 전체를 쓰지 못하게 될 확률이 높다. ( ex. 무선 랜 같은 경우, 주변 연결 환경이 변화하여서..) - 그렇기에, 보통 네트워크마다 MTU ( Max Transfer Unit, 한번에 전달할 수 있는 데이터의 최대 크기 )를
정해 놓는다. - 따라서, End Host들은, Application Program이 보낸 메시지의 크기가 MTU보다 크다면,
- 그것을 잘게 나누어서 보낸다. ( 잘게 나눈 메시지 = 패킷(packet)이라 불린다. )
- 그렇지 않다면, ( 메시지의 크기가 MTU보다 작다면, )
- 그냥 보낸다.
- 즉, 보내는 쪽의 End Host A는 보낼 데이터를 네트워크에서 허용하는 패킷 사이즈(MTU)에 맞게 데이터를 잘라서
엑세스 네트워크에 집어 넣어야 하고, 그 네트워크를 통과하여 상대방 End Host B에 도달하면, 상대방 End Host는
잘라진 Packet을 다시 모아서 조립한 뒤 자신(B)의 위에 돌아가는 Application Program에 조립한 데이터를 전달한다. 이것이 End Host의 역할이다. - 그리고 이런 패킷을 엑세스 네트워크에 넣어 전달할 때 중요한 것은
Link의 Transmission Rate이다.
(ex. Wi-Fi에서 Link Transmission Rate는 11g에서 54Mbps, ac로 가면 1.73Gbps이다.)
이런 것이 높으면 높을 수록, 데이터를 한번에 빨리 보낼 수 있기에, 데이터 전송속도가 늘어난다. - Link Transmission Rate를 상황에 따라서 Link Capacity, Bandwidth라고 부른다.

이제 Access Network의 종류와, Access Network의 종단에 있는 End Host에 대해 알아보았으니, 마지막으로 Host와 Switch( Ethernet의 경우 )또는 Edge Router를 이어주는 Link의 종류에 대해 알아보자.
# Communication Link
- Wired Link ( 유선 링크 )
- Twisted Pair ( 쌍 꼬임선 )
- Coaxial Cable ( 동축 케이블 )
- Optical Fiber ( 광섬유 )
- Wireless Link ( 무선 링크 )
- Frequency ( 주파수 )
# Communication Link : Wired
- Twisted Pair ( 쌍 꼬임선 )
- 전화 발명때부터 사용했다.
- 절연된 두개의 구리(copper)선이 꼬여 있다.
- 두 개의 선이 꼬여있는 이유는, 외부의 노이즈의 영향을 최소화하기 위해서이다.
( 왜냐하면, 쌍 꼬임선을 통한 통신에서 데이터의 추출은 두 선에 흐르는 전류의 전압 차를 이용하는데,
데이터가 이동하면서 주변에서 번개와 같은 외부 전기 노이즈가 발생하면, 선에 전류의 흐름의 세기에
영향을 받을 수 있다. 이 때, 두 선을 꼬아 놓는다면, 외부의 노이즈에 동일한 정도의 영향을 받기에 각
선의 전압의 절댓값은 변해도, '차'는 유지되기 하여, 노이즈에 상관없이 데이터가 올바르게 전송되기
때문이다. ) - 통신 속도는 100Mbps ~ 10Gbps 이다.
- Coaxial Cable ( 동축 케이블 )
- 동축은, 同( 같을 동 ) 軸( 축 축 ), 축이 동일하다는 뜻이다.
- 구리(copper)선을 이용하여 전류를 흘려서 데이터를 전달한다.
- 아주 높은 Bandwidth의 데이터를 전달할 수 있다.
- 전송할 수 있는 데이터의 폭이 넓어서 채널을 여러개 둘 수 있다. ( 위에 서술한 Access Network- 케이블 네트워크 참고 ) 이를 이용해, 케이블 TV로 여러 방송국의 채널을 동시에 볼 수 있다. ( 여러 개의 채널을 두어, 방송 별로 다른 채널을 할당할 수 있게 한다. )
- Optical Fiber ( 광섬유 )
- 빛을 통해 데이터를 전달한다.
- 쌍 꼬임선, 동축 케이블이 구리(copper)선에 전류를 흘려 데이터를 전달하여,
1. 외부 전자기적 노이즈에 대한 영향 ( 쌍 꼬임선-> 영향을 최소화하는 것이지, 아예 영향을 없앨 수는 없다. )
2. 그에 따른 에러율 증가
3. 전류를 흘려보내는 도선의 저항에 의한 신호 감쇠도 증가
4. 낮은 속도 ( 광섬유는 빛을 통해 전송, 쌍 꼬임선/ 동축 케이블 => 전류를 도선에 흘려보냄 : 빛 속도의 2/3 )
와 같은 문제가 발생하는 것을 모두 극복한다. - 데이터의 Carrier (= Link ) 주파수에 비례하여, Bandwidth가 증가하는데,
빛의 파장은 전파의 파장보다 짧고, 이에 따라 빛의 주파수가 전파의 주파수보다 높다.
이에 따라, 빛을 통한 데이터의 전송의 Bandwidth는 쌍 꼬임선/동축 케이블보다 높다
즉, 데이터의 전송 속도 측면에서도 광섬유가 쌍 꼬임선/동축 케이블보다 우위에 있다. - 매년 기술이 발전하여, 점점 더 높은 대역의 빛을 사용할 수 있고, 이에 따라 광섬유의
데이터 전송 속도는 더 증가하고 있다.

# Communication Link : Wireless
- 주파수 대역을 이용한다.
- Bandwidth for each service
- 참고) Bandwidth(대역폭)은 bps, Hz( 파장의 길이 ) 단위를 혼용하여 쓴다.
- Wi-Fi : 2.4GHz, 5GHz
- IMT-Advanced( 4G LTE ) : about 2GHz
- IMT-2020 ( 5G ) : 30GHz ~ 300GHz - 주파수로 변환 시, 1mm~10mm, 밀리미터 웨이브라 부른다.
- 위성 통신 : 1 ~ 40 GHz 중 부분 부분(discrete) 주파수를 사용한다.
- 수(水)상 / 수중에서는 전파가 멀리 가야하기 떄문에 낮은 주파수를 사용하고
- 장애물이 없는 우주같은 경우에는 직진성이 강한 높은 주파수를 사용한다.
- 그 중간의 주파수를 사용하는 서비스의 예에는 AM/FM 라디오 등이 있다.
- The higher the frequency, the stronger the linearity and the faster the attenuation
- 주파수가 증가할수록, 직진성이 강해지지만, 신호 감쇠율 또한 커져 ( 직진하여 가다보니 장애물이 생기면 신호가 소멸 ) 넓은 범위로 전달되지 못한다.
- 내 서비스가 커버해야하는 Range에 따라 사용하는 주파수가 달라져야 한다.
- 즉, 주파수에 따른 표준 프로토콜을 선택해야 한다.

'컴퓨터네트워크' 카테고리의 다른 글
| #3. 네트워크 코어 (0) | 2019.06.29 |
|---|---|
| #1. 네트워크와 인터넷 (0) | 2019.06.27 |
#1. 네트워크와 인터넷
방학을 맞아 1주정도 쉬고나니 공부가 하고 싶어졌다.
뭘 공부해야할까.. 고민을 많이 해보았는데,
이번학기 Docker & Kubernetes 및 클라우드 서비스 아키텍처를 공부하면서
계속 부족하다고 느꼈던 네트워크 관련지식을 단단하게 하는게 좋겠다는 생각이 들었다.
블로그 포스팅은 K-MOOC의 부산대학교 유영환 교수님의 컴퓨터네트워킹 강의를 들으면서
필기하고, 느낀 점을 중심으로 작성하고자 한다.
[1주차의 목표]
- 네트워크와 인터넷 개념 소개
- 인터넷 구성요소 소개
[학습목표]
- 인터넷의 개념에 대해서 이해한다.
- 네트워크와 인터넷이 어떻게 구성되어 있는지 알아본다.
# 네트워크
우리에게 가장 익숙한 인터넷에서부터, 공중 유선 전화망, 휴대 전화망과 같은 유선 네트워크와
그 외에 위성 네트워크를 포함한 각종 무선 네트워크가 포함된다.
# 1강에서는..
인터넷이란 무엇인가
네트워크를 구성하는 요소(component)들 ( HW components + SW components )
인터넷의 전체 구조
를 중심으로 살펴본다.
# What is the Internet?
- 네트워크의 종류는 다양하다.
- Internet = Inter- + net(work) , 즉 네트워크 간(間)의 네트워크이다.
- 네트워크의 종류 : "Home Network", "Institutional(회사 같은 기관) Network", "Mobile(스마트폰, 스마트 냉장고..) Network", "Global ISP", "Regional ISP" (ISP = Internet Service Provider)
- 네트워크란, 여러가지 기기들 ( Desktop, Server, Smartphone, Smart Device, Laptop... := Device = "End Host" )들이, "서로의 정보를 교환하기 위한 목적"(=네트워크의 존재 의미)로 연결되어 있는 것이다.
- 네트워크는 한 개의 덩어리가 아닌, 여러개로 분할(partition)되어 있다. 그것을 이어주는 것이 바로 인터넷이다.
★ ISP : 개인이나 기업체에게 인터넷 접속 서비스, 웹사이트 구축 및 웹호스팅 서비스 등을 제공하는 회사를 말한다. 대표적으로 한국에서는 KT 인터넷, SK 브로드밴드, LG U+ 등이 있다. (출처 : 나무위키)

# 인터넷의 구성요소
- Internet is consist of HW components + SW componenets.
- [Internet's HW Component] : End Host , Interconnection Device, Link
- End Host
- 랩탑, 모바일 기기(스마트폰, 스마트 냉장고...), 데스크탑, 서버..
- 네트워크의 종단(=끝부분)에 위치한 노드(node : 네트워크를 이루는 기기들을 노드라고 한다.)
- 네트워크의 목적인 "통신", 즉 "정보를 주고 받는 행위" 는 크게 보면, "End host"들 간의 통신을 의미한다. A라는 End Host에서 B라는 End Host로 정보를 보낼 때, 이 정보 덩어리(= 이를 패킷(packet)이라고 한다.)는 link를 타고, interconnection device들을 지나 B로 도착하게 된다.
- Client, Server는 모두 Host이다.
- Interconnection Device
- 라우터(Router), 스위치(Switch), 리피터(Repeater)...등등
- 네트워크의 대략적 구조
- (End Host) - (link) - (InterConnection Device) - (link) - (ICD) - ...- (link) - (ICD) - (link) - (End Host)
- 즉, 한 End Host에서 다른 End Host로 정보(=패킷)을 보낼 때, 여러 개의 Interconnection Device를 거치게 된다.
- 이러한 Interconnection Device는 정보(=패킷)을 "어떠한 식으로" 전달할지를 결정한다.
- Link
- Link는 네트워크에 있는 여러가지 노드들(Nodes = End hosts + Interconnection Devices)을 유선 혹은 무선의 형식으로 연결해준다.
- 유선의 경우, 구리선(copper), 광섬유(fiber) 등이 있고,
- 무선의 경우, 지상에서는 라디오 주파수(Radio Frequency), 위성을 통해서는 위성전파가 있다.
- End Host
- [Internet's SW Component] : OS, Application Program, Protocols
- OS (Operating System)
- Desktop : Windows, Linux, OS X
- Mobile : Android, iOS
- Application Programs
- 웹 브라우저 ( 구글 Chrome, 네이버 Whale, Internet Explorer, Firefox ... )
- TMI) 포털사이트 ≠ 웹 브라우저 ( 난 헷갈렸었다.. )
- Messanger Program...
- 웹 브라우저 ( 구글 Chrome, 네이버 Whale, Internet Explorer, Firefox ... )
- Protocols
- 서로 다른 노드(Node = End Hosts + Interconnection Devices)들 끼리 통신("정보를 주고 받음")을 하면서, 지켜야 할 약속
- OS (Operating System)
# Protocol
- 정의
- A defined set of rules & regulations that
- determine how data is transmitted
- in telecommunications and computer networking
- determine how data is transmitted
- 전화망(telecommunication), 컴퓨터 네트워킹에서
- 데이터를 전달하는 과정을 정의한
- 룰(rule)또는 규제(regulation)
- 데이터를 전달하는 과정을 정의한
- A defined set of rules & regulations that
- Protocol의 종류 (예) = "데이터를 어떻게 표현할 것인가?"
- 비교) 인간의 대화 프로토콜 vs 컴퓨터의 통신 프로토콜

# 통신 프로토콜 (Communication Protocol)
- All communication activity in Internet
- is governed by protocols.
- 모든 인터넷 상의 통신("정보를 주고 받음")은
- 프로토콜이 관리한다.
- Protocol defines...
- Message Format
- Order of Messages sent and received among network entities(=nodes)
- Actions taken on message transmission, receipt
- Message Format ~= 어순
- ex) 패킷(packet)의 헤더(header) 정보
- 네트워크 상에서 돌아 다니는 패킷의 내부 구성요소에는 헤더(Header)라는 것이 있다.
- 헤더는 20바이트로 구성되어있는데,
- 헤더의 13번째 바이트부터 16번째 바이트는 보내는 쪽의 IP ( source IP )
- 17번째 바이트부터 20번째 바이트는 받는 쪽의 IP ( destination IP )이다.
- 이러한 "약속"(= 메시지의 형식이 이렇더라..)은 미리 정의되어 있어야 한다. => Protocol
- ex) 패킷(packet)의 헤더(header) 정보
- Order of Messages
- ex) 아까의 컴퓨터의 통신 프로토콜 예에서
- "어떤 정보(data)를 요구(request)하려면, 그 두 기기 사이의 연결(connection)이 수립되어야한다." 라는 조건.
- 그러고 난 다음에(=순서 : Order of Messages), 파일 요청 메시지를 보낼 수 있는데, 이 때 파일 요청 메시지의 형식은 "GET (URL)" 형식이어야 한다. (메시지의 형식, 생김새 : Message Format)
- 그러고 나면(=순서), 응답이 온다... 이러한 식의 순서
- 즉 "메시지를 주고받는 순서의 틀"을 미리 정의하여야 한다. => Protocol
- ex) 아까의 컴퓨터의 통신 프로토콜 예에서
- Actions
- ex) 파일을 보낼 때, 만약 파일 크기가 너무 크면
-> 보내는 쪽에서는 보낼 때( 그 순간 ) 그것을 잘라서 보내야 한다.(Action)
-> 받는 쪽에서 받을 때 ( 그 순간 ) 잘라져 있는 메시지를 합쳐야 한다.(Action)-> 받는 쪽에서는 받을 때 ( 그 순간 ) 그 메시지들에 에러가 포함되어 있는 지 확인해야 한다.(Action)
에러가 없다면, "에러 없음"이라는 메시지를 송신 측에 보내주어야 한다.(Action) - 이러한 메시지를 주고 받는 그 순간들에 수행해야하는 행동을 미리 정의하여야 한다. => Protocol
- ex) 파일을 보낼 때, 만약 파일 크기가 너무 크면
이러한 HW 구성요소와 SW 구성요소가 함께 동작하여 인터넷에 있는 디바이스는 서로 통신할 수 있다.
'컴퓨터네트워크' 카테고리의 다른 글
| #3. 네트워크 코어 (0) | 2019.06.29 |
|---|---|
| #2. 네트워크 엣지 (0) | 2019.06.28 |