网络编程概述
什么是计算机网络?
把分布在不同地理区域的,具有独立功能的计算机(各种该设备)通过通信设备和网线连接起来,最终实现资源共享,信息传递
网络对于我们现在的生活非常重要。
什么是网络编程?
我们写的程序可以支持网络通信,实现程序与程序间进行互联互通。java是支持网络通信的
网络编程要素:
如何找到对方主机(电脑) IP
如何可靠高效进行数据传输 通信协议
网络通信要素:
IP,端口号,通信协议
IP是网络中的一个计算机地址
192.168.31.132是局域网 判IP地址
本机回环127.0.0.1
端口号:端口号与计算机上安装软件相关的
一个电脑上安装了许多的软件,可以为运行中的程序分 配一个端口号
IP(找主机)+端口(找程序)
通信协议:就是约定,约定通信的双方如何发送数据
网络通信协议:
计算机网络中实现通信必须有一些约定,即通信协议,对速率,传输代码,代码结构,传输控制步骤,出错控制等
传输层协议:
传输控制协议TCP(Transmission Control Protocol)
用户数据报协议UDP(User Datagram Protocol)
TCP:
客户端(加卡学生端)和服务器端(加卡教师端)之间的通信协议
加卡自动查找教师端,这就是一个尝试连接的过程。
在发送数据前,要先进行 “三次握手”, 保证连接通道是畅通的,是可靠的。
速度慢,因为要建立连接,释放连接。
UDP:
传输数据时,将数据和源(从哪发的)目的封装在一个数据报中,不需要建立连接,直接发送即可。
速度快,因无需建立连接,故是不可靠的。
java支持TCP和UDP通信协议的实现类