TCP/IP 소켓 프로그래밍에서는 주로 네트워크 프로그램의 개발에 대한 내용을 설명합니다.정보 전달은 정보의 종류와 처리하는 방식에 상관없이 수신자, 송신자, 전령 3 가지 구성요소를 가지고 있습니다. 이중에 전령은 매체의 역할을 하며 송신자와 수신자는 정보를 만들고 해석하는 역할을 하게 됩니다. 예를 들자면 방송은 방송죽 (송신자), 전파 (전령), TV (수신자)가 있어야 합니다.

 

일반적으로 매체는 전령의 역할을 할 뿐 그 자체가 정보를 생산하거나 정보를 해석하지는 않습니다. 그러므로 매체를 통해서 전달된 정보를 저장하고, 분석하고, 분류하기 위한 프로그램이 필요합니다. 인터넷이 생기기 이전의 매체에서는 사람이 중심이 되어 프로그램의 역할을 맡아서 진행하였습니다.

 

 

 

그러나 인터넷 시대인 현재는 사람 대신에 컴퓨터가 그 역할을 맡아서 하고 있습니다. (인간의 역할 100%를 대신 한다는 것은 아닙니다.) 즉 인터넷에서는 네트워크 프로그램이 사람을 대신해서 네트워크로 전달된 정보를 저장, 분석, 처리하고 있습니다.

 

 


 

 

네트워크는 주로 '여러 객체가 얽혀서 정보를 교환하는 시스템' 이라고 말할 수 있습니다. 우리는 주로 사회 혹은 기술적인 분야에서 네트워크란 단어를 많이 듣습니다. 때문에 네트워크는 사람이 만든 인공적인 것이라고 생각할 수 있겠지만, 네트워크는 원래 자연에서 찾아볼 수 있습니다. 네트워크의 예는 생명체의 최소 단위라고 할 수 있는 세포 수준에서도 찾아볼 수 있습니다.

 

 

 

위의 그림을 자세히 보면 각 점은 하나의 정보를 저장할 수 있습니다. 네트워크를 이루지 않을 경우 저장할 수 있는 정보는 매우 한정적이지만, 여섯 점이 모두 서로 연결되어 이를 조합하면 매우 많은 정보를 저장할 수 있습니다. 한 점에서 다른 점으로 갈 수 있는 경로가 매우 다양하기 때문입니다. 또한 경로 하나가 차단되더라도 다른 경로를 이용해서 정보에 접근할 수 있으므로 안정성을 높일 수도 있습니다. 사람의 뇌를 구성하는 뉴런도 이러한 네트워크의 형태로 구성되어 있습니다. 덕분에 그렇게 크지 않은 뇌 (약 1300g)로 엄청난 양의 정보를 안정적으로 저장하고 분석까지 할 수 있습니다.

 

이처럼 네트워크를 구성하면 한정된 공간에서 정보를 더 많이 그리고 더 안정적으로 운용할 수 있습니다. 인류의 문명의 발전에 있어서도 네트워크의 활용이 지대한 영향을 미쳤습니다. 인류의 발전은 네트워크와 함께 하고 있다고 해도 과언이 아닙니다. 인간은 다른 동물에게서 볼 수 없는 사회라는 고도의 정보 네트워크를 구축해서,문화를 일구었습니다. 또한 상하수도망과 도로망도 만들었습니다. 모든 길은 로마로 통한다는 말은 네트워크의 중심이 즉 로마에 있었고, 때문에 로마가 문명의 중심에 있었기 때문입니다.

 

네트워크는 보통 정보를 전달하는 매체에 의해서 한계가 주어집니다. 이러한 한계는 대체로 물리적인 요소들 이었습니다. 도로망, 우편망은 도로 및 차량이 가지는 물리적인 한계가 있습니다. 더 좋은 도로와 더 크고 빠른 교통수단들 덕에 상당히 완화되긴 하였지만 여전히 공간과 시간의 정보전달을 방해하고 있습니다.

 

이런 공간과 시간의 한계는 전기/전자 정보통신 기술의 발전과 함께 허물어지기 시작했습니다. 전화, 라디오, TV로 이어지는 매체의 발전은 대량의 정보를 거의 실시간으로 전송할 수 있게 해줬습니다. 방송망 즉 대중매체가 탄생했기 때문입니다. 그러다가 드디어 컴퓨터를 사용하는 컴퓨터의 네트워크인 '인터넷'이 발명되었고, 20세기 후반에 나타난 인터넷은 '제 3의 물결', '정보통신 혁명'이 일어나며 새로운 산업으로 급성장했습니다.

 


 

※ 오늘은 TCP/IP 소켓 프로그래밍에서 '네트워크 프로그램'에 대하여 알아보았습니다.

 

이 포스트는 학부에서 제공하는 기본적인 컴퓨터 공학 강의와 네트워크 프로그래밍 책들을 토대로 알기 쉽게 내용을 작성하였습니다. 하지만 계속 더 유익하고 논문 및 전문 서적을 읽어가며 더 추가돼야 할 내용이 있으면 TCP/IP 네트워크프로그래밍 포스트와 콘텐츠들을 계속 고도화하는 방식으로 진행하려고 합니다.

#컴퓨터공학 #TCPIP #소켓프로그래밍 #네트워크프로그래밍 #네트워크 #인터넷

+ Recent posts