1.概述:即通过无线网络或者有线网络可以把不同地理位置且相互独立的计算机连同其外部设备连接起来,组成计算机网络。这样就实现了计算机之间的资源共享和信息的传递。
2.网络通信三要素
2.1)ip地址
网络中计算机的唯一标识;
32bit(4字节),一般用“点分十进制”表示,如:192.168.1.158
ip地址=网络地址+主机地址,类别:
A类:第1个8位表示网络地址。剩下的3个8位表示主机地址
B类:第2个8位表示网络地址。剩下的2个8位表示主机地址
C类:第3个8位表示网络地址。剩下的1个8位表示主机地址
D类地址用于在IP网络中的组播
E类地址保留作科研之用。
Java编程中可以使用InetAddress类来操纵ip地址
InetAddress localHost = InetAddress.getLoalHost();
System.out.println(localHost.getHostAddress());
System.out.println(localHost.getHostName());
2.2)端口号
用于标识进程的逻辑地址,不同进程的标识;
有效端口:0-65535,其中0-1024系统使用或保留端口。
2.3)传输协议
通讯的规则
常见的协议:udp(用户数据报协议)、TCP(传输控制协议)
udp
将数据源和目的封装成数据包中,不需要建立连接
每个数据包的大小限制在64kb内
因没有连接,是不可靠协议
不需要建立连接,速度快
TCP
建立连接,形成传输数据的通道。
在连接中进行大数据传输
通过三次握手完成连接,是可靠协议
必须建立连接,效率会稍低
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)