자바 네트워크 프로그래밍
도서명:자바 네트워크 프로그래밍
저자/출판사:리차드,리스/에이콘출판
쪽수:364쪽
출판일:2017-01-02
ISBN:9788960779563
목차
1장. 네트워크 프로그래밍 시작
__InetAddress 클래스를 사용한 네트워크 주소
__NIO 지원
____URLConnection 클래스 사용
____버퍼와 채널을 이용한 URLConnection 클래스 사용
__클라이언트/서버 아키텍처
__간단한 에코 서버 생성
____간단한 에코 클라이언트 생성
____자바 8을 사용한 에코 서버와 클라이언트 지원
__UDP와 멀티캐스팅
____멀티캐스트 서버 생성
____멀티캐스트 클라이언트 생성
__확장성
____스레드 서버 생성
____스레드 서버 사용
__보****
____SSL 서버 생성
____SSL 클라이언트 생성
____보****키 생성
__요약
2장. 네트워크 주소
__네트워크 기본
____네트워크 기본 이해
________네트워크 아키텍처와 프로토콜
__NetworkInterface 클래스 사용
____Mac 주소 획득
________특별한 Mac 주소 획득
________다중 MAC 주소 획득
__네트워크 주소 개념
____URL/URI/URN
____URI 클래스 사용
________URI 인스턴스 생성
________URI 부분 분리
____URL 클래스 사용
________URL 인스턴스 생성
________URL 부분 분리
____IP 주소와 InetAddress 클래스
________주소 정보 획득
________주소 범위 문제
________도달 가능성 테스트
____Inet4Address 소개
________IPv4의 사설 주소
________IPv4 주소 타입
________Inet4Address 클래스
________특별한 IPv4 주소
____Inet6Address 클래스 소개
________IPv6의 사설 주소
________Inet6Address 클래스
________특별한 IPv6 주소
____IP 주소 타입 테스트
________IPv4 호환 IPv6 주소 사용
__네트워크 속성 제어
__요약
3장. 네트워크 NIO 지원
__자바 NIO
__버퍼 소개
__채널을 사용한 타임 서버
____타임 서버 생성
____타임 클라이언트 생성
__채팅 서버/클라이언트 애플리케이션
____채팅 서버
____채팅 클라이언트
____서버/클라이언트 상호작용
____HelperMethods 클래스
________가변 길이 메시지 처리
____채팅 서버/클라이언트 애플리케이션 실행
__다중 클라이언트 처리
____부품 서버
____부품 클라이언트 핸들러
____부품 클라이언트
____부품 클라이언트/서버 실행
__비동기 소켓 채널
____비동기 서버 소켓 채널 서버 생성
____비동기 소켓 채널 클라이언트 생성
__기타 버퍼 작업
____대량 데이터 전송
____뷰 사용
____읽기 전용 버퍼 사용
__소켓 옵션 제어
__요약
4장. 클라이언트/서버 개발
__HTTP 프로토콜 구조
__HTTP 메시지의 특성
____요청 초기 라인 형식
____헤더 라인
____메시지 몸체
____클라이언트/서버 상호작용 예제
__HTTP 클라이언트/서버 애플리케이션에서 자바 소켓 지원
____간단한 HTTP 서버 구축
____간단한 HTTP 클라이언트 구축
__표준 자바 클래스를 사용한 클라이언트/서버 개발
____HttpURLConnection 클래스 사용
________URL 인코딩
____HTTPServer 클래스 사용
________간단한 HttpServer 클래스 구현
________응답 헤더 관리
__오픈소스 자바 HTTP 서버
__서버 구성
__쿠키 처리
__요약
5장. P2P 네트워크
__P2P 기능/특성
__애플리케이션 기반 P2P 네트워크
__P2P 애플리케이션용 자바 지원
__분산 해시 테이블
____DHT 컴포넌트
____DHT 구현
____JDHT 사용
__FreePastry 사용
____FreePastry 예제
________FreePastryExample 클래스의 이해
________FreePastryApplication 클래스의 이해
________특정 노드에게 메시지 전송
__요약
6장. UDP와 멀티캐스팅
__UDP에 대한 자바 지원
__TCP와 UDP
__UDP 클라이언트/서버
____UDP 서버 애플리케이션
____UDP 클라이언트 애플리케이션
____작동하는 UDP 클라이언트/서버
__UDP를 위한 채널 지원
____UDP 에코 서버 애플리케이션
____UDP 에코 클라이언트 애플리케이션
____작동하는 UDP 에코 클라이언트/서버
__UDP 멀티캐스팅
____UDP 멀티캐스트 서버
____UDP 멀티캐스트 클라이언트
____작동하는 UDP 멀티캐스트 클라이언트/서버
__채널에 의한 UDP 멀티캐스팅
____UDP 채널 멀티캐스트 서버
____UDP 채널 멀티캐스트 클라이언트
____작동하는 UDP 채널 멀티캐스트 클라이언트/서버
__UDP 스트리밍
____UDP 오디오 서버 구현
____UDP 오디오 클라이언트 구현
__요약
7장. 네트워크 확장성
__멀티스레드 서버 개요
__thread-per-request 접근법
____thread-per-request 서버
____thread-per-request 클라이언트
____작동하는 thread-per-request 애플리케이션
__Thread-per-connection 접근법
____thread-per-connection 서버
____thread-per-connection 클라이언트
____작동하는 thread-per-connection 애플리케이션
__스레드 풀
____ThreadPoolExecutor 클래스 특성
____간단한 스레드 풀 서버
____간단한 스레드 풀 클라이언트
____작동하는 스레드 풀 클라이언트/서버
____Callable와 스레드 풀
________Callable 사용
________Future 사용
__HttpServer 실행기 사용
__셀렉터 사용
____셀렉터 생성
____채널 등록
____타임 클라이언트/서버를 지원하는 셀렉터 사용
________채널 타임 서버
________날짜와 시간 클라이언트 애플리케이션
________작동하는 날짜와 시간 서버/클라이언트
__네트워크 타임아웃 처리
__요약
8장. 네트워크 보****
__보****
____보****통신 용어
__암호화 기본
____대칭 암호화 기법
________키 생성
________대칭 키를 이용한 암호화 텍스트
________복호화 텍스트
____비대칭 암호화 기법
________비대칭 키 생성과 저장
________비대칭 키를 사용한 암호화/복호화 텍스트
________비대칭 키 파일 저장
__키스토어 생성
____keytool을 사용한 키스토어 생성과 유지
____Keytool 커맨드라인 인자
____자바를 사용한 키스토어 생성과 유지
__대칭 암호화 클라이언트/서버
____대칭 서버 애플리케이션
____대칭 클라이언트 애플리케이션
____작동하는 대칭 클라이언트/서버
__비대칭 암호화 클라이언트/서버
____비대칭 서버 애플리케이션
____비대칭 클라이언트 애플리케이션
____작동하는 비대칭 클라이언트/서버
__TLS/SSL
____SSL 서버
____SSL 클라이언트
____작동하는 SSL 클라이언트/서버
__보****해시 함수
__요약
9장. 네트워크 상호운용성
__자바 바이트 순서
__기타 언어와의 인터페이스
____JVM 기반 언어와 인터페이스
____비JVM 언어와 인터페이스
__간단한 소켓을 이용한 통신
____자바 서버
____C# 클라이언트
____작동하는 클라이언트/서버
__미들웨어를 통한 상호운용성
____RESTful 서비스 생성
____RESTful 서비스 테스트
____RESTful 클라이언트 생성
__요약