我们都知道,现实生活中,两人远距离需要联系、通信,要联系对方,如果是写信,我们就需要知道对方的居住地址,需要打电话,那么也一定需要知道对方的电话号码。
那么同理,在计算机世界中,两台机器如果需要通信,也是需要对方的地址的,而机器的地址比较特殊,是一串32位的二进制数字,为了方便,通常会转换为10进制显示,这串数字有个专门的词语描述------IP地址。
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类地址保留作研究之用。
ok,我们知道了IP地址以后,就找到了需要和哪台机器通信,然而机器中有很多的应用程序,应该由谁去通信呢?
比如,我的电脑使用qq给你发消息,你的电脑也只能用qq来接收处理我的消息,别的应用程序也不认识我发的是什么数据包。
这里就要引出一个新的东西了----->端口
端口号 :用于标识进程的逻辑地址,不同进程的标识;
端口号就类似于门牌号,ip地址就是你住在哪个小区。通过这俩,我就能找到你,和你进行.....emmm,一些私密的事情
好的,现在我已经找到你了,咦?这是个洋妞?说的外国话,我听不懂怎么办???
所以,这里我们就需要告诉她,让她说中文,这样我们才能听懂,才能交流,才能保持下去------>传输、通信协议。
传输协议:通讯的规则 常见协议: UDP(用户数据报协议)、TCP(传输控制协议)
http协议主要用于应用层,j2ee中主要是操作request、response,所以又叫javaEE企业应用
TCP和UDP主要应用于传输层。
这里可以我们来看一下网络模型
物理层:
主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。
主要作用是将数据最终编码为用0、1标识的比特流,通过物理介质传输。
这一层的数据叫做比特。
数据链路层:
主要将接收到的数据进行MAC地址(网卡地址)的封装与解封装。
常把这一层的数据叫做帧。这一层常工作的设备是交换机。
网络层:
主要将接收到的数据进行IP地址的封装与解封装。
常把这一层的数据叫做数据包。这一层设备是路由器。
传输层:
定义了一些数据传输的协议和端口号。
主要将接收的数据进行分段和传输,到达目的地址后在进行重组。
常把这一层的数据叫做段。
会话层:
通过传输层建立数据传输的通路。
主要在系统之间发起会话或者接收会话请求。
表示层:
主要进行对接收数据的解释、加密与解密、压缩与解压缩。
确保一个系统的应用层发送的数据能被另一个系统的应用层识别。
应用层:
主要是为一些终端应用程序提供服务。直接面对着用户的。
不想打字了,直接收尾吧。