목차
1. 네트워크 프로그래밍 기초 ... 7
   1.1.네트워크 기초 ... 8
      1.1.1 컴퓨터 네트워크 ... 8
      1.1.2 프로토콜 ... 10
      1.1.3 TCP/IP 이해 ... 15
      1.1.4 IP 주소 ... 21
      1.1.5 포트 ... 23
      1.1.6 DNS ... 24
      1.1.7 java.net 패키지 ... 26
   1.2 InetAddress 클래스 ... 28
      1.2.1 InetAddress 클래스의 멤버필드 ... 28
      1.2.2 InetAddress 객체 생성 ... 29
      1.2.3 InetAddress 클래스의 멤버필드 값 반환 ... 33
      1.2.4 InetAddreSS 클래스의 기타 객체 메소드 ... 37
   1.3 URL 클래스 ... 41
      1.3.1 URL이란? ... 41
      1.3.2 URL 클래스의 객체 생성 ... 42
      1.3.3 URL 를래스의 멤버필드 ... 50
      1.3.4 멤버필드 값 반환 메소드 ... 52
      1.3.5 URL 클래스를 이용하여 서버에 접속하기 ... 60
      1.3.6 URL 클래스의 객체 지원 메소드 ... 56
   1.4 1장 정리 ... 69
      1.4.1 네트워크 기초 ... 69
      1.4.2 InetAddress 클래스 ... 72
      1.4.3 URL 클래스 ... 73
   1.5 연습문제 ... 76
2. URLConnection 클래스 ... 79
   2.1 URLConnection 객체 생성 ... 80
   2.2 URLConnection 멤버필드 ... 82
   2.3 URLConnection 메소드 ... 82
      2.3.1 데이터 입출력 메소드 ... 83
      2.3.2 데이터 헤더 분석 메소드 ... 86
      2.3.3 URLConnection 클래스의 설정 메소드 ... 93
      2.3.4 URLConnection 클래스의 정적 메소드 ... 96
   2.4 2장 정리 ... 104
      2.4.1 URLConnection 객체 생성 ... 104
      2.4.2 URLConnection 멤버필드 ... 104
      2.4.2 URLConnection 메소드 ... 104
   2.5 연습문제 ... 108
3. 소켓 프로그래밍 ... 109
   3.1 소켓이란? ... 110
   3.2 Socket 클래스 ... 112
      3.2.1 Socket 클래스의 객체 생성 ... 113
      3.2.2 Socket 클래스의 입출력 메소드 ... 116
      3.2.3 Socket 클래스의 종료 메소드 ... 121
      3.2.4 Socket 클래스의 기타 메소드들 ... 122
   3.3 ServerSocket 클래스 ... 130
      3.3.1 ServerSocket 클래스의 객체 생성 ... 131
      3.3.2 클라이언트 접속 요청 받기 및 응답 ... 134
      3.3.3 ServerSocket 닫기 ... 140
      3.3.4 ServerSocket 클래스의 객체 메소드들 ... 141
      3.3.5 간단한 HTTP 서버 만들기 ... 146
   3.4 3장 정리 ... 154
      3.4.1 소켓이란? ... 154
      3.4.2 Socket 클래스 ... 154
      3.4.3 ServerSocket 클래스 ... 156
      3.4.4 간단한 HTTP 서버 만들기 ... 157
   3.5 연습문제 ... 159
4. 채팅 프로그램 작성 ... 161
   4.1 간단한 클라이언트-서버 통신 프로그램 ... 163
      4.1.1 클라이언트 프로그래밍 ... 163
      4.1.2 서버 프로그래밍 ... 165
      4.1.3 클라이언트-서버 통신 프로그램 ... 167
   4.2 다중 연결 서버 구현 ... 183
   4.3 4장 정리 ... 196
      4.3.1 간단한 클라이언트-서버 통신 프로그램 ... 196
      4.3.2 다중 연결 서버 구현 ... 197
   4.4 연습문제 ... 198
5. 채팅 프로그램 작성 ... 201
   5.1 채팅 서버 프로그램 ... 202
   5.2 채팅 클라이언트 프로그램 ... 211
   5.3 로그온 처리 ... 229
   5.4 대화방 입장 처리 ... 240
   5.5 대화내용 전송 처리 ... 248
   5.6 로그아웃 처리 ... 253
   5.7 대화방에서 나가기 처리 ... 259
   5.8 대화내용 지우기 처리 ... 266
   5.9 종료 처리 ... 267
   5.10 전체 소스 ... 272
   5.11 5장 정리 ... 305
      5.11.1 채팅 서버 프로그램 ... 305
      5.11.2 채팅 클라이언트 프로그램 ... 305
      5.11.3 로그온 처리 ... 306
      5.11.4 대화방 입장 처리 ... 306
      5.11.5 대화내용 전송 처리 ... 307
      5.11.6 로그아웃 처리 ... 308
      5.11.7 대화방에서 나가기 처리 ... 308
      5.11.8 대화내용 지우기 처리 ... 309
      5.11.9 종료 처리 ... 309
6. UDP 프로토콜을 이용한 통신 ... 311
   6.1 UDP 프로토콜 개요 ... 312
   6.2 자바에서의 UDP 프로토콜 ... 312
   6.3 DatagramPacket 클래스 ... 313
      6.3.1 DatagramPacket 클래스의 객체 생성 ... 314
      6.3.2 DatagramPacket 클래스의 메소드 ... 315
   6.4 DatagramSoket 클래스 ... 322
      6.4.1 DatagramSocket 클래스의 객체 생성 ... 322
      6.4.2 DatagramSocket 클래스의 메소드 ... 323
   6.5 6장 정리 ... 348
      6.5.1 UDP 프로토콜 개요 ... 348
      6.5.2 자바에서의 UDP 프로토콜 ... 348
      6.5.3 DatagramPacket 클래스 ... 349
      6.5.4 DatagramSoket 클래스 ... 351
   6.6 연습문제 ... 354
부록 ... 355
   1. OSI 모델 계층 구조 ... 356
      1.1 데이터 링크 계층 프레임 ... 356
      1.2 네트워크 계층 기능 ... 356
      1.3 운반 계층의 기능 ... 357
      1.4 세션 계층의 기능 ... 358
      1.5 프레젠테이션 계층 기능 ... 359
      1.6 응용프로그램 계층 기능 ... 360
   2. OSI 모델의 데이터 횡단 ... 360
   3. 네트워크 클래스 ... 362
      3.1 A 클래스 ... 362
      3.2 B 클래스 ... 363
      3.3 C 클래스 ... 363
      3.4 D 클래스 ... 363
      3.5 E 클래스 ... 363
   4. IP 데이터그램 구조 ... 364
   5. TCP 데이터그램(패킷) 구조 ... 366
   6. UDP 데이터그램 ... 367
   7. 라우터 ... 370
   8. ICMP ... 371
   9. 도메인 이름(Domain Name) ... 371
   10. MIME(Multipurpose Internet Mail Extension) ... 372
   11. HTTP 응답 및 엔티티 헤더 ... 373
      11.1 HTTP 일반 헤더 ... 373
      11.2 HTTP 응답 헤더 ... 373
      11.3 HTTP 엔티티 헤더 ... 374
   12. 미디어 트래커 이용 ... 374
   13. UTF(UCS Transformation Format)-8 ... 375
      13.1 문자 인코딩 소개 ... 375
      13.2 UTF-8 소개 ... 376
찾아보기 ... 379
닫기