ip协议

TCP/IP详解卷一》读书笔记十:UDP和IP分片

自古美人都是妖i 提交于 2019-12-22 16:57:18
由于工作需要和知识储备,重新系统地学习网络方面的知识,先从《TCP/IP详解卷一》开始,对看书的大体内容进行简单整理,在这里进行记录。记录只是对知识的整理过程,并不追求面面俱到。 概念 UDP:用户数据报协议,是一种保留消息边界的简单的面向数据报的传输层协议。不提供差错纠正、队列管理、重复消除、流量控制和拥塞控制。与此同时传输开销很小。 DF:不分片 路径MTU:指在本条数据传输路径上支持的最大传输单元,由路径上路由器的最小MTU来决定; 主要内容 来源: CSDN 作者: wanghz999 链接: https://blog.csdn.net/wanghz999/article/details/103652903

TCP/IP协议之IP层

你。 提交于 2019-12-22 11:21:38
TCP/IP协议的结构参见下图。有应用层,运输层,网络层,链路层。 但是如果更细化的话,其实还有几层没在这上面体现出来。 1 表示层:数据格式化,代码转换,加密。 没有协议 2 会话层:解除或者建立与其他结点的联系。没有协议 3 物理层:以二进制形式在物理链路上传输数据。协议有ISO2100,IEEE802 在上图中加上这三层协议。就构成了OSI七层协议网络模型。从上到下分别是应用层,表示层,会话层,传输层,网络层。数据链路层,物理层。 为什么一个数据传输要分成这么多层呢。统一为一个模块不行么。其实不管是多层还是单层,都是可以实现数据传输的。但是在OSI7层模型中,每一层都有自己独特的任务。如果如果只有一层的话。在后期维护的时候,就会出现混乱。没有一个明确的责任主体 这就好比是一个工厂。工厂有生产线,采购部,质量部,运输部,财务部,市场部。对一个产品从无到有的过程中,会经历以上部门的处理。如果有任意一个节点出了问题,只需要处理问题节点即可,其他节点照常运行。OSI7层模型也是一样的道理。各个层可以看做是生产流水线上各个部门。各司其职,各自负各自的责任。这也体现了分工协作的思想。 那么7层模型中各自的作用是什么呢: 应用层:文件传输,电子邮件,文件服务,聊天软件,视频播放等各种软件应用。常用的协议有FTP,TFTP,SNMP,SMTP,DNS,Telent. 作用在于产生数据报文

TCP/IP学习笔记12-- IP协议基础

大憨熊 提交于 2019-12-21 10:54:53
IP(internet protocol, 网际协议) IP相当于OSI参考模型中的第三层 -- 网络层。 - -网络层的下一层--数据链路层的主要作用是在 同一种数据链路 的节点之间进行包传递,而一旦跨越多种数据链路,就需要借助网络层。 网络层 和数据链路层的关系: 数据链路层负责两个直连设备之间的通信, 作为网络层的IP负责实现 没有直连的两个网络层 之间的通信。 IP地址: 之前介绍过数据链路中的MAC地址(网卡地址),其作用是区分同一个链路中的不同的计算机。作为网络层的IP也有这种地址信息,成为IP地址,在TCP/IP通信中,所有的主机,路由器都必须设定自己的IP地址。 路由控制: 世界上有很多个 子网络 ,每个自网络都是由很多个计算机构成的。从源计算机发出的数据,要最终到达目标计算机,中间需要经过很多子网络,每个子网络都有一个路由器,路由器负责自网络之间的通信。源计算机发出的数据,到第一个离自己最近的路由器之后,该路由器看到目标计算机的IP,会查看路由控制表格(每个路由器都有一份),根据该表格决定将数据发送到哪一个子网络,,下一个路由器收到后做同样的动作,最终将信息传递给目标计算机。 图中一跳 指的是:从源mac地址到目标mac地址之间的区间,是 一个主机或路由器的网卡 不经过其他路由器而直接到达相邻 主机/路由器的网卡的一个区间。 IP属于面向无连接类型:

常见网络攻击

元气小坏坏 提交于 2019-12-21 08:44:51
1.1 TCP SYN拒绝服务攻击  一般情况下,一个TCP连接的建立需要经过三次握手的过程,即:  1、 建立发起者向目标计算机发送一个TCP SYN报文;  2、 目标计算机收到这个SYN报文后,在内存中创建TCP连接控制块(TCB),然后向发起者回送一个TCP ACK报文,等待发起者的回应;  3、 发起者收到TCP ACK报文后,再回应一个ACK报文,这样TCP连接就建立起来了。  利用这个过程,一些恶意的攻击者可以进行所谓的TCP SYN拒绝服务攻击:  1、 攻击者向目标计算机发送一个TCP SYN报文;  2、 目标计算机收到这个报文后,建立TCP连接控制结构TCB),并回应一个ACK,等待发起者的回应;  3、 而发起者则不向目标计算机回应ACK报文,这样导致目标计算机一致处于等待状态。  可以看出,目标计算机如果接收到大量的TCP SYN报文,而没有收到发起者的第三次ACK回应,会一直等待,处于这样尴尬状态的半连接如果很多,则会把目标计算机的资源(TCB控制结构,TCB,一般情况下是有限的)耗尽,而不能响应正常的TCP连接请求。  1.2 ICMP洪水  正常情况下,为了对网络进行诊断,一些诊断程序,比如PING等,会发出ICMP响应请求报文(ICMP ECHO),接收计算机接收到ICMP ECHO后,会回应一ICMP ECHO Reply报文

TCP/IP 分层

心不动则不痛 提交于 2019-12-21 04:36:44
网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如TCP/ I P ,是一组不同层次上的多个协议的组合。TCP/IP通常被认为是一个四层协议系统,如图1 - 1所示。 每一层负责不同的功能: 1) 链路层,有时也称作数据链路层或网络接口层,通常包括 操作系统 中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。 2) 网络层,有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(internet互联网控制报文协议),以及IGMP协议(internet组治理协议)。 3 ) 运输层主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议: TCP(传输控制协议)和UDP(用户数据报协议)。 TCP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。 而另一方面, U D P则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供

网络编程1 网络开发基础(Socket、TCP、UDP)

狂风中的少年 提交于 2019-12-21 03:40:02
OSI七层网络模型 1.网络的七层结构:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 2.在网络通信的发送端,其通信数据每到一个通信层,都会被该层协议在数据中添加一个包头数据。而在接收方恰恰相反,数据通过每一层时都会被该层协议剥去相应的包头数据。 TCP/IP 1.IP地址 IP地址是指互联网协议地址(Internet Protocol Address,又译为网际协议地址)。IP地址时IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一个主机分配一个逻辑地址,以此来屏蔽物理地址的差异。 2.Port 端口号:为了区分不同的网络程序,计算机会为每一个· 网络程序分配一个独一无二的端口号,端口是一个虚拟的、逻辑上的概念。 for example:Web服务的端口号是80,FTP服务的端口号是21,SMTP服务的端口号是25。 3.TCP/IP通信协议的网络层次结构 应用层 运输层 网际层IP 网络接口层 4.TCP/IP协议的特性 1.封包交换网络服务 2.可靠流传输服务 3.独立网络技术 4.通用互连 5.端到端应答式 6.标准应用协议 5.TCP/IP中的各种协议 1.IP协议 IP协议是网络层协议,主要职责是把数据从源地址传送到目的地址,并提供两个基本功能--寻址和分段 IP协议提供的是不可靠无连接的服务 2.TCP协议

Day 6-1计算机网络基础&TCP/IP

删除回忆录丶 提交于 2019-12-20 11:44:31
按照功能不同,人们将互联网协议分为osi七层或tcp/ip五层或tcp/ip四层(我们只需要掌握tcp/ip五层协议即可) 每层运行常见物理设备: TCP/IP协议: Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础. OSI五层协议各层的功能: 物理层:计算机之间要想一起玩,就必须接入internet,言外之意就是计算机之间必须完成组网. 物理层功能:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0. 数据链路层:单纯的电信号0和1没有任何意义,必须规定电信号多少位一组,每组什么意思 数据链路层的功能:定义了电信号的分组方式 以太网协议: 早期的时候各个公司都有自己的分组方式,后来形成了统一的标准,即以太网协议ethernet ethernet规定 一组电信号构成一个数据包,叫做‘帧’ 每一数据帧分成:报头head和数据data两部分 head包含:(固定18个字节) 发送者/源地址,6个字节 接收者/目标地址,6个字节 数据类型,6个字节 data包含:(最短46字节,最长1500字节) 数据包的具体内容 head长度+data长度=最短64字节,最长1518字节

python中的socket通信

别来无恙 提交于 2019-12-20 08:56:37
协议的概念 不同的国家 说不同 的 语言人 门想 沟通 就需要用英语 ,只要有一种大家都认可都遵守的协议即可, 这种方式在 计算机 上要 遵守的网络通信协议叫做 TCP/IP协议 早期的计算机网络,都是由各厂商自己规定一套协议, IBM 、 Apple 和 Microsoft 都有各自的网络协议,互不兼容为了把全世界的所有不同类型的计算机都连接起来,就必须规定一套全球通用的协议,为了实现互联网这个目标,互联网协议簇( Internet Protocol Suite )就是通用协议标准。因为互联网协议包含了上百种协议标准,但是最重要的两个协议是 TCP 和 IP 协议,所以,大家把互联网的协议简称 TCP/IP 协议 常用的四大协议 链路层 -> 网络层 -> 传输层 -> 应用层 分化成 7 层的是 物理层 -> 数据链路层 -> 网络层 -> 传输层 -> 会话层 -> 表示层 -> 应用 tcp/ip 是一个协议组 不是两层 端口的概念 在 linux 系统中,端口可以有 65536 ( 2 的 16 次方)个之多! 既然有这么多,操作系统为了统一管理,所以进行了编号,这就是端口号 端口是通过端口号来标记的,端口号只有整数,范围是从 0到65535 端口(知名端口和动态端口) 知名端口 周知的端口号,范围从 0到1023 好比是 一些常用的功能使用的号码是 固定 的

【转载】2. Linux 网络编程——网络字节序、地址转换

こ雲淡風輕ζ 提交于 2019-12-20 04:00:12
网络编程中最基本的概念就是面向连接(connection-oriented)和无连接(connectionless)协议。尽管本质上来说,两者之间的区别并不难理解,但对那些刚刚开始进行网络编程的人来说,却是个很容易混淆的问题。这个问题与上下文有些关联:很显然, 如果两台计算机要进行通信,就必须以某种形式“连接”起来,那“无连接通信”又是什么意思呢? 答案是: 面向连接和无连接指的都是协议。 也就是说,这些术语指的并不是物理介质本身,而是用来说明如何在物理介质上传输数据的。面向连接和无连接协议可以,而且通常也确实会共享同一条物理介质。 如果两者的区别与承载数据的物理介质无关,又和什么有关呢?它们的本质区别在于, 对无连接协议来说,每个分组的处理都独立于所有其他分组,而对面向连接的协议来说,协议实现则维护了与后继分组有关的状态信息。 无连接协议 中的分组被称为数据报(datagram),每个分组都是独立寻址,并由应用程序发送的。 从协议的角度来看,每个数据报都是一个独立的实体,与在两个相同的对等实体之间传送的任何其他数据报都没有关系, 这就意味着协议很可能是不可靠的。 也就是说,网络会尽最大努力传送每一个数据报,但并不保证数据报不丢失、不延迟或者不错序传输。 另一方面, 面向连接的协议 则维护了分组之间的状态,使用这种协议的应用程序通常都会进行长期的对话。记住这些状态

互联网基础知识------OSI七层网络模型梗概

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-19 23:36:45
OSI七层模型      七层网络结构:   应用层、表示层、会话层、传输层、网络层、数据链路层、物理层   一般也作五层 应用层、传输层、网络层、数据链路层、物理层(实体层)   引申问题:TCP/IP协议与http协议的区别:     TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。 关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP 文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”     术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议。“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络。把 IP想像成一种高速公路 ,它允许其它协议在上面行驶并找到到其它电脑的出口。 TCP和UDP是高速公路上的“卡车”,它们携带的货物就是像HTTP ,文件传输协议FTP这样的协议等。    TCP和UDP是FTP,HTTP和SMTP之类使用的传输层协议