ip协议

tcp/ip协议做了啥

你离开我真会死。 提交于 2020-02-26 08:37:40
# 基础知识: - tcp/ip协议不是一个协议,是一个协议群,tcp/ip协议对应的四层模型,应用层、传输层、网络层、链路层。 ## 各层到底做了啥? - 链路层: 主要是将数据封装成数据帧,数据帧头部信息有源mac地址,目标mac地址,然后以广播形式通过物理介质(光纤、双绞线..)发送给目标主机。 为什么有ip地址还需要mac地址? ip地址是分配的,可变动的,mac地址是每块网卡的身份标识,主机接入互联网必须使用网卡,网卡地址是一个机器全球唯一标识,所以通过mac地址找目标主机更可靠。 有了MAC地址以后,以太网采用广播形式,把数据包发给该子网内所有主机,子网内每台主机在接收到这个包以后,都会读取首部里的目标MAC地址,然后和自己的MAC地址进行对比,如果相同就做下一步处理,如果不同,就丢弃这个包。 - 网络层: 发送者如何知道接收者的MAC地址?(arp协议) 发送者如何知道接收者和自己同属一个子网?(ip协议) 如果接收者和自己不在同一个子网,数据包如何发给对方(路由协议) 网络层有ip协议、arp协议、路由协议,主要是解决如上三个问题。 我认为该层主要是为了获取目标的mac地址。 ARP获取mac地址,ARP首先会发起一个请求数据包,数据包的首部包含了目标主机的IP地址,然后这个数据包会在链路层进行再次包装,生成以太网数据包

网络协议随笔

允我心安 提交于 2020-02-22 22:50:13
网络协议随笔 OSI网络七层协议: 1 物理层 2 数据链路层 3 网络层 4 传输层 5 会话层 6 表示层 7 应用层 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tLHgwm1q-1582366046690)(网络协议随笔.assets/image-20200218230815389.png)] 五层体系结构 TCP/IP协议: 1 应用层 2 运输层 3 网络层 4 网络接口层 TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。 对比: 网络传输的流程 不同的协议层堆数据包有不同的称谓: 1.传输层:段 2.网络层:数据报 3.数据链路层:帧 当数据从上层到下层交付的时候,要进行封装,到了堆端之后要进行解包,在解包的时候要决定数据交给上层,还有一个动作叫分用。 数据必须通过物理层(硬件)。 来源: CSDN 作者: 黑白灰coder 链接: https://blog.csdn.net/qq_42068145/article/details/104447823

TCP/IP、Http、Socket的区别

怎甘沉沦 提交于 2020-02-22 03:22:46
 网络由下往上分为   物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。   通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,   三者从本质上来说没有可比性,   socket则是对TCP/IP协议的封装和应用(程序员层面上)。   也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,   而HTTP是应用层协议,主要解决如何包装数据。   关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:   “我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容。   如果想要使传输的数据有意义,则必须使用到应用层协议。   应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。   WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”   而我们平时说的最多的socket是什么呢,实际上socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API)。   通过Socket,我们才能使用TCP/IP协议。   实际上,Socket跟TCP/IP协议没有必然的联系。   Socket编程接口在设计的时候,就希望也能适应其他的网络协议

tcp/ip协议

情到浓时终转凉″ 提交于 2020-02-17 09:20:30
tcp/ip协议 TCP/IP(Transmission Control Protocol/Internet Protocol)是一种可靠的网络数据传输控制协议。定义了主机如何连入因特网以及数据如何在他们之间传输的标准。 三次握手协议 所谓三次握手(Three-Way Handshake)即建立TCP连接,就是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。 TCP共有6个标志位,分别是: SYN(synchronous),建立联机。 ACK(acknowledgement),确认。 PSH(push),传输。 FIN(finish),结束。 RST(reset),重置。 URG(urgent),紧急。 (1)第一次握手:Client将标志位SYN(同步序列编号)(Synchronize Sequence Numbers)置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。 (2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。 (3)第三次握手:Client收到确认后

HTTP与TCP/IP

半世苍凉 提交于 2020-02-17 05:32:09
一.HTTP简介 HTTP一般指HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种 网络传输协议 ,所有的 WWW文件 都必须遵守这个标准。HTTP也是一个简单的 请求-响应 协议,它通常运行在 TCP 之上。它指定了 客户端 可能发送给 服务器 什么样的消息以及得到什么样的响应。请求和响应消息的头以 ASCII 码形式给出;而消息内容则具有一个类似 MIME 的格式。 二.TCP/IP TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议 最具代表性 ,所以被称为TCP/IP协议。 TCP/IP协议在一定程度上参考了OSI的体系结构。 OSI (开放系统互联(Open System Interconnection))模型共有七层,从下到上分别是物理层、数据链路层、网络层、输层、会话层、表示层和应用层。但是这显然是有些复杂的,所以在TCP/IP协议中,它们被简化为了四个层次。 (1)应用层、表示层

TCP/IP,HTTP,SOAP等协议之区别

谁都会走 提交于 2020-02-15 06:24:45
术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议。“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络。把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,文件传输协议FTP这样的协议等。 你应该能理解,TCP和UDP是FTP,HTTP和SMTP之类使用的传输层协议。虽然TCP和UDP都是用来传输其他协议的,它们却有一个显著的不同:TCP提供有保证的数据传输,而UDP不提供。这意味着TCP有一个特殊的机制来确保数据安全的不出错的从一个端点传到另一个端点,而UDP不提供任何这样的保证。 HTTP(超文本传输协议)是利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的协议。客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送被请求的信息给客户端。 SOAP(Simple Object Access Protocal,简单对象访问协议) 技术有助于实现大量异构程序和平台之间的互操作性,根据我有限的了解,SOAP是把成熟的基于HTTP的WEB技术与XML的灵活性和可扩展性组合在了一起。比如我们.NET中的WEB服务,就是基于SOAP。 记住,需要IP协议来连接网络;TCP是一种允许我们安全传输数据的机制

TCP/IP,HTTP,SOAP等协议之区别

折月煮酒 提交于 2020-02-14 00:22:30
术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议。“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络。把IP想像成一种高速公路,它允许其它协议在上面行驶并找到到其它电脑的出口。TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP,文件传输协议FTP这样的协议等。 你应该能理解,TCP和UDP是FTP,HTTP和SMTP之类使用的传输层协议。虽然TCP和UDP都是用来传输其他协议的,它们却有一个显著的不同:TCP提供有保证的数据传输,而UDP不提供。这意味着TCP有一个特殊的机制来确保数据安全的不出错的从一个端点传到另一个端点,而UDP不提供任何这样的保证。 HTTP(超文本传输协议)是利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的协议。客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送被请求的信息给客户端。 SOAP(Simple Object Access Protocal,简单对象访问协议) 技术有助于实现大量异构程序和平台之间的互操作性,根据我有限的了解,SOAP是把成熟的基于HTTP的WEB技术与XML的灵活性和可扩展性组合在了一起。比如我们.NET中的WEB服务,就是基于SOAP。 记住,需要IP协议来连接网络;TCP是一种允许我们安全传输数据的机制

常用网络命令(windows下)

时光怂恿深爱的人放手 提交于 2020-02-13 18:42:27
ping命令 特点: ping命令只有在安装了TCP/IP协议以后才可以使用 运行ping命令以后,在返回的黑屏幕窗口中会返回对方客户机的IP地址和表明ping通对方的时间,如果出现信息“Reply from ...”,则说明能与对方连通;如果出现信息“Request timeout ...”,则说明不能与对方连通 按照缺省设置,每发出一个ping命令就向对方发送4个网间控制报文协议ICMP的回送请求,如果网络正常,发送方应该得到4个回送的应答 作用: 利用ping命令可以排除网卡,Modem,电缆和路由器等存在的故障 ping命令是用于检测网络连接性,可到达性和名称解析等疑难问题的TCP/IP 命令.根据返回的信息,可以推断TCP/IP参数的设置是否正确以及TCP/IP协议运行是否正常. ping命令发出后得到以毫秒或者毫微秒为单位的应答时间,这个时间越短就表示数据路由畅通;反之则说明网络连接不够畅通 ping命令显示的TTL(Time To Live 存在时间)值,可以推算出数据包通过了多少个路由器.因此用ping命令来测试两台计算机是否连通非常有效 如果ping不成功,则可以认为故障出现在以下几个方面:网线、网卡、IP地址 格式: ping [-t] [-a] [-n Count] [-l Size] [-f] [-i TTL] [-v TOS] [-r Count] [-s

第七周作业

爱⌒轻易说出口 提交于 2020-02-12 20:57:48
1、简述osi七层模型和TCP/IP五层模型 OSI七层模型和TCP/IP模型两者对应关系图: OSI七层模型: 物理层: 二进制传输。为启动、维护以及关闭物理链路d'yi定义了电气规范、机械规范、过程规范和功能规范。 数据链路层: 介质访问。定义如何格式化数据以便进行传输以及如何控制对网络的访问;支持错误检测。 网络层: 数据传输。路由数据包;选择传递数据的最佳路径;支持逻辑寻址和路径选择。 传输层: 传输问题。确保数据传输的可靠性;建立、维护和终止虚拟电路;通过错误检测和恢复;信息流控制来保障可靠性。 会话层: 主机间通信。建立、管理和终止在应用程序之间的会话。 表示层: 数据表示。确保接收系统可以读出该数据;格式化数据;构建数据;协商用于应用层的数据传输语法;提供加密。 应用层: 网络进程访问应用层。为应用程序进程(例如,电子邮件、文件传输和终端仿真)提供网络服务;提供用户身份验证。 TCP/IP四层模型: 应用层: 应用层对应于OSI参考模型的高层,为用户提供所需要的各种服务,例如:FTP、Telnet、DNS、SMTP等。 传输层: 传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报协议(UDP)。 TCP协议提供的是一种可靠的、通过“三次握手

HTTP基础之 TCP/ IP 协议族

故事扮演 提交于 2020-02-12 14:43:14
通常使用的网络( 包括 互 联网) 是在TCP/ IP 协议族的基础上运作的。 而 HTTP 属于它内部的一个子集。 TCP/ IP 协议族里重要的一点就是分层。 TCP/ IP 协议族按层次分别分为以下 4 层: 应用层、 传输层、 网络层 和数据链路层。 应用层 应用层决定向用户提供应服务时通信的活动。TCP/ IP 协议族内预存了各类通用的应用 服务。比如,FTP( File Transfer Protocol, 文件传输 协议) 和 DNS(Domain Name System, 域名 系统) 服务就是其中 两类。 HTTP 协议也处于该层。 传输层 传输层对上层应用层,提供处于网络连接中的两台 计算机 之间的数据传输。 在传输层有两个性质不同的协议: TCP( Transmission Control Protocol,传输控制协议) 和UDP( User Data Protocol,用户数据报协议)。 网络层( 又名网络互连层) 网络层用来处理在网络上流动的数据包。 数据包是网络传输的最小数据单位。 该层规定了通过怎样的路径( 所谓的传输路线) 到达对方算机, 并把数据包传送给对方。 与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线。 链路层( 又名数据链路层,网络接口层) 用来处理连接网络的硬件部分