NetWork

1. 네트워크

네트워크는 그물망처럼 여러 사람, 시스템이 연결되어 일이나 작업을 수행하는 구조로, 여러 분야에서 활용된다.

쉽게 말해 두 개 이상의 대상들이 연결되는 것이다.

 

Net(그물망) + Work(일하거나 작업하는 것)

 

그중에서 개발자가 설명해야 하는 개념은 컴퓨터 네트워크!

입출력 대상이 서로 다른 두 컴퓨터일 때

데이터 교환이 이루어지는 프로그래밍 동작

 

 

2. 컴퓨터 간 데이터를 주고받으려면 무엇이 필요한가?

두 컴퓨터가 있다. A 컴퓨터 자리에 앉은 학생이 B 컴퓨터 자리에 앉은 학생에게 강의 자료를 전달하려고 한다.

 

1) 물리적인 통신망 연결

먼저 어떻게 연결해야 할까?

USB로 전달한다. 랜선으로 연결한다. 공유 폴더를 연동한다. 등등 다양한 방법을 떠올릴 수 있다.

두 컴퓨터가 물리적인 매체(WIFI, USB 등)를 사용하여 컴퓨터나 네트워크 장비들이 연결되어야 데이터를 교환할 수 있다.

 

2) 데이터를 송수신할 수 있는 소프트웨어

두 컴퓨터 간의 연결을 완료했다면 다양한 방법을 사용하여 자료를 전달할 수 있다.

 

두 컴퓨터 간에 어떤 양식과 규칙으로 자료를 전달할지 정해야 한다.

➡️ 프로토콜

 

어떻게 방식으로 전달할지 정했다면 전화망(전화기 설치), 전력망(전봇대 설치)와 같은 네트워크 인프라가 필요하다. 

➡️ 통신 인터페이스

 

프로토콜

프로토콜이란 컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계이다.

프로토콜 종류는 TCP/IP, HTTP, FTP, SMTP 등이 있다.

    프로토콜    
인터넷 사용하는 컴퓨터
TCP/IP
인터넷 사용하는 컴퓨터
인터넷을 사용하는 컴퓨터 간에 데이터를 전송하는 데 사용되는 프로토콜
클라이언트
HTTP
서버
웹 클라이언트와 서버 간에 통신하기 위한 프로토콜
클라이언트
FTP
서버
파일 전송을 위한 프로토콜
이메일 서버
SMTP
이메일 서버
이메일을 보내기 위한 프로토콜

 

통신 인터페이스

서로 다른 두 컴퓨터가 데이터를 교환할 수 있도록 하는 인터페이스는 여러 종류가 있다.

Socket, 이더넷, 블루투스, USB 등을 사용할 수 있다.