[Java] 자바 네트워크에 대한 이해

 네트워크란? 

1. 네트워크란 다른 장치로 데이터를 이동시킬 수 있는 컴퓨터들과 주변 장치들의 집합입니다.

2. 네트워크의 연결된 모든 장치들을 노드라고 합니다.

3. 다른 노드에게 하나 이상의 서비스를 해주는 노드를 호스트라 부릅니다. 

4. 하나의 컴퓨터에서 다른 컴퓨터로 데이터를 이동시킬 때 복잡한 계층을 통해 전송되는데, 이런 복잡한 레이어의 대표적인 모델이 OSI 계층 모델입니다. 

5. OSI 계층 모델은 모두 7계층으로 이루어져 있습니다. 

6. 데이터 통신을 이해하는데 OSI 계층 모델은 상당한 역할을 하지만, 인터넷 기반의 표준 모델로 사용하는 TCP/IP 계층 모델을 주로 사용하고 있습니다.

7. 자바에서 이야기하는 네트워크 프로그래밍은 TCP/IP모델을 사용하고 있습니다.


 IP주소 

1. 모든 호스트는 인터넷 주소(Host 또는 IP 주소)라 불리는 유일한 32비트 숫자로 구성된 주소 체계를 이용하여 서로를 구분할 수 있습니다. 

2. IP 주소는 32비트 숫자를 한번에 모두를 표현하는 것이 힘들기 때문에, 8 비트씩 끊어서 표현하고, 각 자리는 1바이트로 0~255 까지의 범위를 갖게 됩니다.

3. 32비트의 주소 체계를 IP 버전 4(IPv4) 주소라고 합니다. 

4. 오늘날 IPv4는 포화 상태이고, 이를 극복하고자 나온 것이 IP 버전 6(IPv6)입니다. 

5. IPv6는 128 비트의 주소 체계를 관리하고 있으며, 16비트씩 8부분으로 나누어 16진수 표시합니다.

ip

6. 각 호스트는 도메인 이름을 컴퓨터가 사용하는 주소(IP 주소)로 바꾸어 주어야 한다. 이렇게 IP 주소를 도메인 이름으로 바꾸어 주는 시스템을 DNS(Domain Name System)이라고 합니다.


 포트와 프로토콜 

포트

1. 포트는 크게 두 가지로 구분되는데 컴퓨터의 주변자치를 접속하기 위한 ‘물리적인 포트’와 프로그램에서 사용되는 접속 장소

인 ‘논리적인 포트’가 있습니다.

2. 포트번호는 인터넷번호 할당 허가 위원회(IANA)에 의해 예약된 포트번호를 가지게 됩니다.

3. 이런 포트번호를 ‘잘 알려진 포트들’라고 부릅니다.

4. 예약된 포트번의 대표적인 예로는 80(HTTP), 21(FTP), 22(SSH), 23(TELNET)등이 있습니다.

5. 포트번호는 0~65535까지 이며, 0~1023까지는 시스템에 의해 예약된 포트번호이기 때문에 될 수 있는 한 사용하지 않는 것이 바람직합니다.


프로토콜

1. 프로토콜은 클라이언트와 서버간의 통신 규약입니다.

2. 통신규약이란 상호 간의 접속이나 절단방식, 통신방식, 주고받을 데이터의 형식, 오류검출 방식, 코드변환방식, 전송속도 등에 대하여 정의하는 것을 말합니다.

3. 대표적인 인터넷 표준 프로토콜에는 TCP와 UDP가 있다.


 TCP와 UDP 

1. TCP/IP 계층 모델은 4계층의 구조를 가지고 있습니다.

2. 애플리케이션, 전송, 네트워크 , 데이터 링크 계층이 있습니다. 

3. 이 중 전송계층에서 사용하는 프로토콜에는 TCP와 UDP가 있습니다. 

tcp udp

TCP   

TCP(Transmission Control Protocol)는 신뢰할 수 있는 프로토콜로서 , 데이터를 상대 측까지 제대로 전달되었는지 확인 메시지를 주고 받음으로써 데이터의 송수신 상태를 점검합니다.


UDP

UDP(User Datagram Protocol)은 신뢰할 수 없는 프로토콜로서, 데이터를 보내기만 하고 확인 메시지를 주고 받지 않기 때문에 제대로 전달했는지 확인하지 않습니다.


Example ) TCP – 전화, UDP - 편지 


[Java] 자바 네트워크 InetAddress 클래스

[Java] 자바 네트워크 URL 클래스와 URLConnection 클래스

[Java] 자바 네트워크 TCP 통신 소켓프로그래밍

[Java] 자바 네트워크 UDP 통신 소켓프로그래밍

[Java] 자바 네트워크 유니캐스팅과 멀티캐스팅

[Java] 자바 네트워크 프로토콜이란 무엇인가?



댓글(0)

Designed by JB FACTORY