1:网络编程是两台设备之间通过网络实现数据传输
2:三要素:ip地址;端口;协议
ip地址:用于唯一标识网络中的每台计算机。
(1):查看ip地址:ipconfig
(2):检查网络是否连通:ping
(3):域名:将ip地址映射成域名(网址)
端口号:用于标识计算机上某个特定的网络程序
协议:计算机网络中,连接和通信的规则,被称为网络通信协议(tcp;udp)
3:Socket
(1):通信的两端都要有Socket,是两台机器通信的端点
(2):网络通信其实就是Socket之间的通信
(3):Socket允许程序把网络连接当成一个流,数据在两个Socket间通过IO传输
(4):一般主动发起通信的应用程序属于客户端,等待通信请求的为服务端
4:InetAddress类
(1):getLocalHost():获取本机InetAddress对象
(2):getByName():根据指定主机名,获取ip地址对象
(3):getHostName():获取InetAdderss对象的主机名
(4):geHostAddress():获取InetAddress对象的地址
5:TCP:传输控制协议(面向连接)
(1):使用tcp协议前,须先建立tcp连接,形成传输数据通道
(2):传输前,采用“三次握手”方式,是可靠的
(3):tcp协议进行通信的两个应用进程:客户端,服务端
(4):在连接中可进行大数据量的传输
(5):传输完毕,需释放已建立的连接,缺点:效率低
具体实现:
需要注意的是:在写完数据过后,需要设置结束标记,否则程序会阻塞,一直退不出来
6:UDP:用户数据协议(面向无连接)
(1):将数据,源,目的封装成数据包,不需要建立连接
(2):每个数据包的大小限制在64K内,所以不适合传输大量数据
(3):因无需连接,故是不可靠的
(4):发送数据结束时,无需释放资源,因此速度快
具体实现:
7:netstat指令:
(1):netstat-an:查看当前主机网络情况
(2):netstat-an | more:分页显示