Part 1 준비 학습 : 소켓 프로그래밍 입문 Chapter 1 네트워크와 소켓 프로그래밍 ... 23 1 TCP/IP 프로토콜 개요 ... 24 2 소켓의 개념 ... 30 3 윈도우 소켓(윈속) ... 37 요약 ... 45 연습문제 ... 46 Chapter 2 윈도우 소켓 시작하기 ... 47 1 오류 처리 ... 48 2 윈속 초기화와 종료 ... 52 3 소켓 생성과 닫기 ... 55 요약 ... 60 연습문제 ... 61 Chapter 3 소켓 주소 구조체 다루기 ... 63 1 소켓 주소 구조체 ... 64 2 바이트 정렬 함수 ... 68 3 IP 주소 변환 함수 ... 73 4 도메인 이름 시스템과 이름 변환 함수 ... 78 요약 ... 85 연습문제 ... 86 Part 2 기본 학습 : 소켓 프로그래밍 기본 Chapter 4 TCP 서버-클라이언트 ... 89 1 TCP 서버-클라이언트 구조 ... 90 2 TCP 서버-클라이언트 분석 ... 105 3 TCP 서버-클라이언트(IPv6) ... 121 요약 ... 175 연습문제 ... 176 Chapter 5 데이터 전송하기 ... 131 1 응용 프로그램 프로토콜과 데이터 전송 ... 132 2 다양한 데이터 전송 방식 ... 138 요약 ... 169 연습문제 ... 170 Chapter 6 멀티스레드 ... 171 1 스레드 기초 ... 172 2 멀티스레드 TCP 서버 ... 194 3 스레드 동기화 ... 201 4 이벤트 ... 208 요약 ... 216 연습문제 ... 217 Chapter 7 UDP 서버-클라이언트 ... 219 1 UDP 서버 클라이언트 구조 ... 220 2 UDP 서버 클라이언트 분석 ... 232 3 UDP 서버 클라이언트(IPv6) ... 239 4 브로드캐스팅 ... 246 요약 ... 256 연습문제 ... 257 Chapter 8 소켓 옵션 ... 259 1 소켓 옵션의 종류와 관련 함수 ... 260 2 SQL_SOCKET 레벨 옵션 ... 264 3 IPPROTO_IP, IPPROTO_IPV6 레벨 옵션 ... 275 4 멀티캐스팅 코드 분석 ... 290 요약 ... 294 연습문제 ... 299 Chapter 9 GUI 소켓 응용 프로그램 ... 301 1 GUI 응용 프로그램 ... 302 2 GUI 소켓 응용 프로그램 ... 316 3 GUI 응용 프로그램 코드 분석 ... 324 4 대화상자 기반 소켓 응용 프로그램 ... 340 요약 ... 354 연습문제 ... 356 Part 3 심화 학습 : 소켓 프로그래밍 고급 Chapter 10 소켓 입출력 모델(Ⅰ) ... 359 1 소켓 입출력 모델 개요 ... 360 2 Select 모델 ... 368 3 WSAAsynSelect 모델 ... 383 4 WSAEventSelect 모델 ... 402 요약 ... 422 연습문제 ... 423 Chapter 11 소켓 입출력 모델(Ⅱ) ... 425 1 Overlapped 모델(Ⅰ) ... 426 2 Overlapped 모델(Ⅱ) ... 441 3 Completion Port 모델 ... 452 4 소켓 입출력 모델 비교 ... 464 요약 ... 466 연습문제 ... 467 Chapter 12 Raw 소켓 ... 469 1 Raw 소켓 기초 ... 470 2 Ping 프로그램 ... 476 3 Traceroute 프로그램 ... 487 4 ICMP.DLL 활용 ... 497 요약 ... 505 연습문제 ... 506 Chapter 13 직렬 통신과 무선 통신 프로토콜 ... 507 1 직렬 통신 ... 508 2 무선 통신 프로토콜 1 : IrDA ... 525 3 무선 통신 프로토콜 2 : 블루투스 ... 539 요약 ... 559 연습문제 ... 560 Part 4 실전 프로젝트 : IPv4/IPv6 지원 멀티데이터 전송 프로그램 Chapter 14 IPv4 / IPv6 지원 멀티데이터 전송 프로그램 제작 ... 563 1 프로젝트 개요 ... 564 2 응용 프로그램 작성 ... 567 3 서버 코드 분석 ... 569 4 클라이언트 코드 분석 ... 577 5 추가 구현 사항 ... 596 찾아보기 ... 600