[Java] 네트워크 프로그래밍
programming/java

[Java] 네트워크 프로그래밍


20. 네트워크 프로그래밍


20.1 컴퓨터 네트워크

 


20.2 주요 네트워크 관련 명령어


1) ipconfig

2) ping

3) nslookup

네임서버를 조회하는 명령어

4) netstat

NETwork STATus, 네트워크 상태 정보

5) tracert

서비스 경로 추적

6) arp

IP address와 Mac Address 조회

arp -a


20.3 프로토콜(Protocol)


 20.3.1 프로토콜 : 서로 다른 컴퓨터 간의 의사소통을 위한 통신 규약


 20.3.2 프로토콜의 종류


TELNET : 텍스트 기반의 원격접속 서비스

IP (Internet Protocol)

TCP (Transmission Control Protocol)

UDP (User Datagram Protocol)

FTP (File Transfer Protocol)

SMTP (Simple Mail Transfer Protocol)

HTTP (Hyper Text Transfer Protocol)

POP3 (Post Office Protocol)

DHCP (Dynamic Host Control Protocol)

ARP(Address Resolution Protocol) : IP 주소를 물리적 주소로 변환


 20.3.3 TCP/IP

  20.3.3.1 TCP/IP와 OSI 모델

   


   



 20.3.4 TCP와 UDP

  



 20.3.5 IP(Internet Protocol) Address

  



 20.3.6 IP Address와 MAC Address

  


  





20.4 DNS(Domain Name Service)



20.5 소켓(socket)


 20.5.1 소켓 : 네트워크 프로그래밍을 위한 인터페이스

  20.5.1.1 물리적인 소켓

  20.5.1.2 논리적인 소켓



  20.5.2 소켓(Socket)을 이용한 네트워크 프로그래밍


20.6 실습예제


1) InetAddressExam.java    01;30;48

5) UrlConnectionExam.java (html code 읽기)

6) DownloadImage.java (파일 다운로드)    02;11;24

7) UrlEncodeExam.java    02;28;19

13) ChatServer.java (TCP통신, 1:1 콘솔버전)    01;17;45




서버 : 서비스를 제공해주는 쪽

클라이언트 : 서비스를 받는 쪽


요즘은 서버와 클라이언트의 개념이 모호하다!



서버가 갖고 있는 게 세션이고

클라이언트가 갖고 있는게 쿠키다


쿠키 : 나의 흔적