java socket 通讯
参考慕课网:http://www.imooc.com/learn/161
一、网络基础知识
1.1 通讯示意图
1.2 TCP/IP协议
- TCP/IP是世界上应用最为广泛的协议
- 是以TCP/IP为基础的不同层次上多个协议的集合
- 也称TCP/IP协议簇 或 TCP/IP协议栈
- TCP:Transmission Control Protocol, 传输控制协议
- IP:Internet Protocol,互联网协议
1.3 TCP/IP模型
1.4 IP地址
- 为实现网络中不同计算机之间的通讯,每台机器都必须有一个唯一的表示--IP地址
- IP地址格式:点分十进制,例如192.168.0.1
- 32位二进制数
- 为了便于记忆就分为四段,每段八位,中间用小数点隔开。
- 每段八位的二进制数转成十进制,大小为0至255。
1.5 端口号
- 用于区分不同的应用程序
- 端口号范围为0~65535,其中0~1023为系统保留
- IP地址和端口号组成了所谓的Socket,Socket就是网络上运行的程序之间双向通讯链路的终结点,是TCP和UDP的基础。(类似于打电话到总机再转接到分机号)
- 常用默认端口号,http:80,ftp:21,telnet:23
1.6 Java中的网络支持
针对网络通讯的不同层次,java提供的网络功能有四大类
- InetAddress:用于表示网络上的硬件资源
- URL:统一资源定位符,通过url可以直接读取或写入网络上的数据
- Sockets:使用TCP协议实现网络通讯的Socket相关类
- Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通讯