-두 개 이상의 노드가 물리적 또는 노닐적 링크로 연결되어 상호 동작하는 것
일반적으로 서버 - 클라이언트 구조 개념의 프로그래밍이 이루어 짐
네트워크 프로그램의 예
Web Server/Client , FTP Server/Client, telnet Server/Client, 채팅
네트워크 프로그래밍을 하는 방법
표준 API르 ㄹ사용하는 방법 (TCP/IP API (socket))
자체 개발
따라서 일반적으로 네트워크 프로그래밍이란 작은 의미로 TCP/IP 소켓 프로그래밍을 뜻하는 의미로 많이 사용 됨
응답
표준 application 응용 계층
세션
전송 TCP/UDP 신뢰성 있는 전송 제공
네트워크 IP Routing
데이터 driver
물리적 HardWare LAN카드
IPv4
일반적으로 ip라 함은 IPv4를 말함
비 연결성의 신뢰할 수 없는 ㅇatagram 전송 서비스를 제공한다
ip datagram을 지정된 목적지에 전달하기 위해 최대의 노력을 다하지만 도착될 것은 보장하지 않는다. 신뢰도가 요구 된다면 상위 계층에서 해결해야 한다
tcp는 이를 자체 수행한다.
ip의 주요기능은 라우팅이다
네트워크 프로토콜은 IP주소를 사용하여 호스트까지만 인식
- 별도의 연결 설립 과정을 거치지 않음
- 비연결형 데이터 전송 서비스
- 응용 프로세스를 구분하는 포트번호를 부여하는 것만 존재
- 빠른 전송이 가능하여 실시간 멀티미디어 전송에 유리함
- 자원 사용이 적음
|source port | dest port |
|sequence number |
|acknowledgement number |
|d.offs | flags | window size |
| checksum | |
| option |
|data |
PING(Packet Internet Groper)
NFS(Network File system)
네트워크에 연결 된 호스트의 운영체제가 다르면 사용하는 파일 구조가 다르므로 정보를 읽을 수 없다. 표준 파일 구조를 정의하고 서로 다른 파일 구조간에 변환을 통해서 정보를 교환하도록 해 주는 기능을 제공
SMTP(Simple Mail Transfer Protocol)
NTP (Network Time protocol)
socket 종류