用什么手机软件做网站,抖音十大搜索关键词,wordpress4.5漏洞,国际要闻头条最新#x1f389;#x1f389;#x1f389;点进来你就是我的人了 博主主页#xff1a;#x1f648;#x1f648;#x1f648;戳一戳,欢迎大佬指点!人生格言#xff1a;当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友一起加油喔#x1f9be;点进来你就是我的人了 博主主页戳一戳,欢迎大佬指点!人生格言当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友一起加油喔 目标梦想进大厂立志成为一个牛掰的Java程序猿虽然现在还是一个嘿嘿谢谢你这么帅气美丽还给我点赞比个心 目录
一. IP地址和端口号
1. IP地址
2. 端口号
二.协议
1. 为什么要引入协议
2. 协议的基本概念
3. 一些协议的默认端口 三.协议分层
OSI七层模型
TCP/IP五层模型重点
封装和分用 一. IP地址和端口号
1. IP地址 IP地址主要用于标识网络主机、其他网络设备如路由器的网络地址。简单说IP地址用于定位主机的网络地址就好比我们每个人的身份证号一样一个身份证号有且只能对应一个人IP地址由一个32位的二进制数表示它被分割为4个“8位二进制数”也就是4个字节如01100100.00000100.00000101.00000110。 通常用“点分十进制”的方式来表示即 a.b.c.d 的形式a,b,c,d都是0~255之间的十进制整数。如100.4.5.6一般情况下我们都希望网路上每个主机的IP地址都不一样但实际上由于IP地址不太够用最多只能取42亿9千万所以还是有多个主机共用一个IP地址的情况
注意127.的IP地址用于本机环回(loop back)测试通常是127.0.0.1本机环回主要用于本机到本机的网络通信系统内部为了性能不会走网络的方式传输对于开发网络通信的程序即网络编程而言常见的开发方式都是本机到本机的网络通信 IP地址解决了网络通信时定位网络主机的问题但是还存在一个问题传输到目的主机后由哪个进程来接收这个数据呢这就需要端口号来标识 2. 端口号
用于区分一台主机上的应用程序相当于应用程序的一个标识端口号是一个整数2个字节取值范围为0-65535。例如MySQL的默认端口号为3306当一台主机收到一个具体的数据的时候要把这个数据交给哪个程序来处理往往是通过端口号来进行区分的每个访问网络的程序都需要有一个不同的端口号即一台主机上不能用两个进程尝试关联绑定同一个端口号二.协议
1. 为什么要引入协议 有了IP地址和端口号这样可以定位到网络中唯一的一个进程但还存在一个问题网络通信是基于二进制0/1数据来传输那么我们如何告诉对方发送的数据是什么样的呢 网络通信传输的数据类型可能有多种图片视频文本等。同一个类型的数据格式可能也不同如发送一个文本字符串“你好”如何标识发送的数据是文本类型及文本的编码格式呢为了使数据在网络上从源到达目的网络通信的参与方必须遵循相同的规则这套规则称为协议protocol它最终体现为在网络上传输的数据包的格式 2. 协议的基本概念
协议就例如接头行动两个人必须规定一个暗号才能对上这就是一种协议 计算机中的协议就是规定网络通信中的设备如何连接如何互相识别的一套规则。
协议有三要素
语法规定数据与控制信息格式。例如两个人打电话规定用中国话语义规定当一端发出了控制信息另一端该如何响应做出什么动作。比如跑步发令枪一响运动员就跑起来了时序即事件实现顺序的详细说明。规定了何时通信先干什么后干什么。
协议protocol最终体现为在网络上传输的数据包的格式
3. 一些协议的默认端口
系统端口号范围为 0 ~ 65535其中0 ~ 1023 为知名端口号这些端口预留给服务端程序绑定广泛使用的应用层协议如
22端口预留给SSH服务器绑定SSH协议21端口预留给FTP服务器绑定FTP协议23端口预留给Telnet服务器绑定Telnet协议80端口预留给HTTP服务器绑定HTTP协议443端口预留给HTTPS服务器绑定HTTPS协议以上只是说明 0 ~ 1023 范围的知名端口号用于绑定知名协议但某个服务器也可以使用其他 1024 ~65535 范围内的端口来绑定知名协议
一个协议如果要解决网络通信的全部问题那么一个协议是十分复杂的于是有了协议分层 三.协议分层
协议分层就如同我们写代码时一个类太复杂了我们就把他拆分成多个类一个类实现一个功能。 类似有些协议解决的问题都差不多于是依据他解决问题的类型把他们分成了多层协议。
常见协议分分层模型
OSI七层模型 由于OSI七层模型过于复杂且不实用所以并没有实现
TCP/IP五层模型重点
TCP/IP模型根据OSI七层模型进行了精简如图
理解每层协议的功能
应用层负责数据传输到之后该怎么使用传输层负责两点之间数据传输只管发出者和接收者不管传输路径。可类比卖家发货只管发货地和收货地网络层负责两个点之间的路径规划。可类比卖家把东西给物流公司后物流公司负责规划路径例如北京到深圳可以是这个路径北京——杭州——苏州——深圳也可以是这个路径北京——广东——上海——深圳。数据链路层负责两个节点之间如何传输。可类比物流公司规划完路径之后两个节点之间如何运输北京到广东该用货车运还是飞机运。物理层网络通信基础设施。就是我们平常可见的信号塔也可类比送快递的公路没有公路快递也没法送
协议在此拆分过后有许多好处
下层协议使用上层协议不需要知道他实现细节只管用每一层协议可以替换成其他协议其他层次的协议是不会感受到的这也是协议更加灵活了
网络设备所在分层
路由器网络层交换机数据链路层集线器物理层
封装和分用
封装就是在每层进行处理成一个数据报然后递给下一层在处理完后交给物理层传输出去。
过程在应用层会产生一个数据包然后将数据包递给传输层传输层拿到数据包和自己的数据整合好产生一个数据报再给网络层以此类推直到数据链路层整合好所有数据后会构成一个以太网数据帧将这个数据给物理层物理层会将二进制信息转化为光信号/电信号传递出去。同理分用就是封装的逆过程将数据层层拆分最后拿到应用程序数据