인터넷(Internet)이란 무엇인가? - 어떤 것들이 인터넷을 구성하는가 (H/W & S/W)
인터넷이란 전세계 수많은 컴퓨터 디바이스들이 연결되어 소통하는 컴퓨터 네트워크이다. 얼마 되지 않은 과거엔 개인이 사용하는 linux workstation과 데스크톱 PC, 그리고 메일이나 웹페이즈를 전송하는 server가 가장 주요한 컴퓨팅 디바이스였으나, 현재는 노트북을 비롯하여, 스마트폰과 테블릿, 텔레비전, 게임, 웹 캠, 자동차, 환경 측정 센서, 카메라, 보안 시스템등이 모두 인터넷에 연결되어 있다. 우리는 이러한 디바이스를 호스트(host), 혹은 앤드 시스템들(end systems)이라 한다.
당연하게도 어떤 방식으로든 인터넷에 접근하려면 무언가 link가 필요하다. 이러한 앤드 시스템 혹은 호스트들은 인터넷에 연결하기 위해 wireless links(radio spectrum, satellite등을 이용한) 혹은 wired links(optical fiber나 copper wire등을 이용한)로 불리는 communication links를 이용하고, 이를 통해 접속한다. 서로 다른 재질들로 된 link들은 각각 다른 전송 rate를 가지고 있는데 이를 transmission rate라 하며, bits/sec로 측정한다. 목적지가 header라는 곳에 명시되어 있는 데이터의 덩어리(chunks of data)가 가공되어 패키징 된 packet이라 불리는 것들은 network로 전송되고 목적지에의 호스트 혹은 앤드 시스템은 그것을 풀어서 원래의 data로 재조립한다.
packet switch라는 것은 이러한 packet을 다른 communication link로 보내주는 역할을 한다. 이런 packet switch들은 여러 종류가 있지만, 오늘날 인터넷에는 router와 L2 switch(link-layer switch) 2가지를 사용하고 있다. 두 가지 모두 packet을 정해진 목적지에 보내는 역할을 한다.
L2 switch는 일반적으로 Access network에 사용된다. 반면에 router는 network의 core network 부분에 사용된다. packet이 목적지에 도달할 때 까지 경로를 path 혹은 route라 한다. (router는 L3 switch(ip-layer switch)라 불리기도 한다. 이는 뒤에 나올 OSI 7 layer중 3번째 layer와 관련 있기 때문이다. L2 switch 또한 OSI 7 layer의 2번째 layer와 관련 있기 때문에 그렇게 불린다.)
참고 : 위키백과 OSI 모형
end system은 ISP(Internet Service Provider)를 통해서 인터넷에 접속하는데, 이러한 ISP의 예로는 모두가 잘 아는 SK의 브로드밴드 혹은 올레, 유플러스, CJ등이 있다. 인터넷이란 이들 ISP들이 Interconnted된 것인데, network의 network라 생각 할 수 있다. 보통 ISP는 local적인 regional ISP를 의미하는데, 이들은 가입자들에게 Access network를 제공하며, 동적 IP를 할당해준다.(이러한 서비스를 제공하고 돈을 버는 사업을 하는 통신 사업자들이 ISP이다.)
참고 : 위키백과 인터넷 서비스 제공자
인터넷에는 다양한 프로토콜들이 있다. 프로토콜이 무엇인가에 대해서는 뒤에서 알아보도록 하고, 간단히 어떤 약속이라 생각하자. 인터넷의 프로토콜 예시를 먼저 살펴보자면 TCP, IP, HTTP, Skype(스카이프가 사용하는 독자 프로토콜), 802.11 등이 있다. 이러한 프로토콜은 서로간의 약속이므로 누군가가 중재해서 어떤 약속인지를 명시할 필요가 있다. 인터넷에 관하여 명시된 약속을 우리는 Internet Standard라 하며, 이는 IETF(Internet Engineering Task Force)에 의해 만들어지고 개발되고 있다. IETF에서 만든 standard 문서를 RFC(Request for comments)라 부른다.
인터넷(Internet)이란 무엇인가? - 서비스들의 관점에서 보자.
인터넷이란 App입장에서 보면 어떤 인프라(Infrastructure)이다. 웹을 이용하는 App에는 web 관련 환경을 제공하며, email, 인터넷 전화, 게임등에 필요한 네트워크등을 제공한다. 페이스북과 트위터 같은 SNS 또한 Internet이라는 인프라 위에서 만들어지는 App의 한 형태이다. 또한 인터넷은 API(Application programming interface)도 제공하는데, 이 API에 대해서는 추후에 알아보도록 하자.
프로토콜(protocol)이란 무엇인가?
protocol이란 어떤 약속인데, 어떻게 메세지를 보낼지, 그리고 그 메세지에 어떤 식으로 답할지에 관한 약속이다. "안녕?" 라 하면 "안녕!"라고 대답하고, "Hi!"라 하면 "oh, hi!"라고 하는 것이 인간의 프로토콜이다. 영어로 물었기에 영어로, 한국어로 물었기에 한국어로 대답하는 이 행동이 프로토콜인 것이다. 또 '안녕'이라는 것에 대한 의미와 대답을 서로 인지하는 것 또한 어떤 프로토콜이며, 대답을 하고 질문을 하는 행위는 프로토콜을 서로 공유하기에 가능한 것이다.
네트워크에서 프로토콜은 기계가 이러한 행위를 할 수 있도록 하는 기계들의 약속인 것이다. Internet의 모든 커뮤니케이션은 정해진 프로토콜에 의해 가능한 것이다. sender가 보낸 내용을 receiver가 이해할 수 있어야 하기 때문이다.
인터넷에서의 프로토콜이란 인터넷 entity들 사이의 메세지 format과 보내는 메세지, 받는 메세지의 순서, 어떻게 반응하고 전송하는지에 관한 전반적인 정의인 것이다.
'Engineering' 카테고리의 다른 글
Introducing. Stack. / 스택 자료구조 (0) | 2014.11.07 |
---|---|
Introducing. List. / 리스트 자료구조 (0) | 2014.11.07 |
TF-IDF(Term Frequency - Inverse Document Frequency) / 단어 빈도와 역문서 빈도. (0) | 2014.11.07 |
자료구조란? / 알고리즘이란? / 시간복잡도(Time complexity) / 빅오 표기법 (0) | 2014.10.29 |
RSS 피드 표준의 구조 ( 채널, 아이탬등 ) (0) | 2014.08.19 |
리눅스 디바이스 드라이버 Linux device driver / 읽기 read() / 쓰기 write() / 열기 open() / 닫기 close() - 1 (1) | 2014.05.29 |
Core network와 Access network (0) | 2014.03.18 |
SIC/XE의 구조(Architecture), SIC과 어떻게 다른가?, Special symbols (0) | 2014.03.06 |
SIC(Simplified Instructional Computer)의 구조(Architecture), 명령어 포멧(Instruction formats), 주소 형식(Addressing modes) (1) | 2014.03.06 |
시스템 소프트웨어란?(응용 소프트웨어와 시스템 소프트웨어의 차이) (0) | 2014.03.03 |