OSI中的层 功能 TCP/IP协议族
应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet
表示层 数据格式化,代码转换,数据加密 没有协议
会话层 解除或建立与别的接点的联系 没有协议
传输层 提供端对端的接口 TCP,UDP
网络层 为数据包选择路由 IP,ICMP,RIP,OSPF,BGP,IGMP
数据链路层 传输有地址的帧以及错误检测功能 SLIP,CSLIP,PPP,ARP,RARP,MTU
物理层 以二进制数据形式在物理媒体上传输数据 ISO2110,IEEE802,IEEE802.2
应用层
传输层
网络层
数据链路层
物理层
物理层:中继器、集线器、还有我们通常说的双绞线也工作在物理层
数据链路层:网桥(现已很少使用)、以太网交换机(二层交换机)、网卡(其实网卡是一半工作在物理层、一半工作在数据链路层)
网络层:路由器、三层交换机
传输层:四层交换机、也有工作在四层的路由器
而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-)。有时上午面试前强调这个问题,并重复讲一次,下午几乎每一个人都被问到这个问题。
因此在这里详细解释一下这两个过程。
TCP三次握手
所谓三次握手(Three-way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。
三次握手的目的是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号并交换 TCP 窗口大小信息.在socket编程中,客户端执行connect()时。将触发三次握手。
客户端发送一个TCP的SYN标志位置1的包指明客户打算连接的服务器的端口,以及初始序号X,保存在包头的序列号(Sequence Number)字段里。
服务器发回确认包(ACK)应答。即SYN标志位和ACK标志位均为1同时,将确认序号(Acknowledgement Number)设置为客户的I S N加1以.即X+1。
客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1
TCP的全称为传输控制协议。这种协议可以提供面向连接的可靠的字节流服务。第二种协议为UDP全称为用户报文协议,它可以提供面向非连接的不可靠的点到多点的通信。这是两种协议的区别。
TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
1.TCP使用窗口机制进行流量控制 。
2. 什么是窗口?
连接建立时,各端分配一块缓冲区(用来存储接收的数据,并将缓冲区的尺寸发送给另一端接收方发送的确认信息中包含了自己剩余的 缓冲区尺寸剩余 缓冲区空间的数量)叫做窗口 。
用TCP还是UDP,那要看你的程序注重哪一个方面?可靠还是快速?(建立连接三次握手,超时重传,检验数据,流量控制等原因)
应用程序只能通过UDP方式发送广播。
一般情况下,如果调用sendto,只能向非广播地址发送数据报。如果要发送广播数据报,必须告诉内核,可以通过设置SO_BROADCAST套接口选项来做到这一点。
int on=1;
setsockopt(sockfd,SOL_SOCKET,SO_BROADCAST,&on,sizeof(int));
Broadcast Address(广播地址)是专门用于同时向网络中所有工作站进行发送的一个地址。在使用TCP/IP 协议的网络中, 主机标识段host ID 为全1 的IP 地址为广播地址,广播的分组传送给host ID段所涉及的所有计算机。例如,对于 10.1.1.0 (255.255.255.0 )网段,其广播地址为10.1.1.255 (255 即为2 进制的11111111 ),当发出一 个目的地址为10.1.1.255 的分组(封包)时,它将被分发给该网段上的所有计算机。
广播地址主要有两类
广播地址应用于网络内的所有主机
1)受限广播
它不被路由但会被送到相同物理网络段上的所有主机
IP地址的网络字段和主机字段全为1就是地址255.255.255.255
2)直接广播
网络广播会被路由,并会发送到专门网络上的每台主机
IP地址的网络字段定义这个网络,主机字段通常全为1,如 192.168.10.255
四种I P广播地址
受限的广播地址
受限的广播地址是255.255.255.255。该地址用于主机配置过程中IP数据报的目的地址,此时,主机可能还不知道它所在网络的网络掩码,甚 至连它的IP地址也不知道。在任何情况下,路由器都不转发目的地址为受限的广播地址的数据报,这样的数据报仅出现在本地网络中。
指向网络的广播
指向网络的广播地址是主机号为全1的地址。A类网络广播地址为netid.255.255.255,其中netid为A类网络的网络号。一个路由器必须转发指向网络的广播,但它也必须有一个不进行转发的选择。
指向子网的广播
指向子网的广播地址为主机号为全1且有特定子网号的地址。作为子网直接广播地址的IP地址需要了解子网的掩码。例如,如果路由器收到发往 128.1.2.255的数据报,当B类网络128.1的子网掩码为255.255.255.0时,该地址就是指向子网的广播地址;但如果该子网的掩码为 255.255.254.0,该地址就不是指向子网的广播地址。
指向所有子网的广播
指向所有子网的广播也需要了解目的网络的子网掩码,以便与指向网络的广播地址区分开。指向所有子网的广播地址的子网号及主机号为全1。例如,如果目的子网 掩码为255.255.255.0,那么IP地址128.1.255.255是一个指向所有子网的广播地址。然而,如果网络没有划分子网,这就是一个指向 网络的广播。
广播和广播地址
1. TCP/IP协议栈中, 传输层只有UDP可以广播.
2. 只能对同一子网内部广播, 广播数据包不经过路由器.
3. UDP的广播地址为255.255.255.255
4. 在winsock实现中, 有一个选项对应是否允许广播.
必须调用setsockopt打开该选项.
5. 打开后, 用sendto向255.255.255.255发送的数据包全部广播.
很多局域网都定义了一个特殊的保留地址, 称为广播地址. 当信息头中目的地址域的内容为广播地址时, 该帧被局域网上所有计算机接收. 这个过程称为广播.
合法的广播地址就是主机的网络地址加上最大的主机号。网络地址通过机器的ip地址与子网掩码按位与得出,我们以ip地址为10.78.202.175 ,子网掩码为255.255.255.0。
为例来分析一下上面的几个概念
首先将这两个东西换算成二进制代码
ip地址:00001010.01001110.11001010.10101111
子网掩码:11111111.11111111.11111111.00000000
按位与之后得出网络地址:00001010.01001110.11001010.00000000
十进制表示就是10.78.202.0
这个网络地址理论上可以有254台主机
相关推荐
OSI七层参考模型概述 数据封装和拆封过程 TCP/IP协议栈 常见的TCP/IP协议
OSI七层协议模型和TCPIP四层模型;OSI七层协议模型和TCPIP四层模型
3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 普通文件传输协议(TFTP) 26 3.6 简单邮件传输协议(SMTP) 26 3.7 网络...
OSI的七层协议模型的概念清楚,理论也较为完整,但它即复杂又不实用。而TCP/IP分层模型则不同,它得到了非常广泛的应用。TCP/IP 是一个四层的模型,在学习计算机网路的原理时往往采取折中的方法,即综合 OSI 和 TCP/...
3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 普通文件传输协议(TFTP) 26 3.6 简单邮件传输协议(SMTP) 26 3.7 网络...
这是一个TCPIP协议族的教程,OSI七层模型,简单易用,TCP/IP四层模型,TCP/IP五层模型,看了能很快的进入学习状态!
包括开放式通信模型、TCP/IP通信模型、IP网络中的命名和寻址机制、地址解析及反向地址解析协议、DNS域字服务器、WINS、地址发现协议、IPv6、IP网络中的路由协议(RIP、OSPF等)、互联网打印协议、LDAP目录服务、远程...
TCP/IP协议并不完全符合OSI的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、...
OSI七层模型 七层模型即,应用层,表示层,会话层,传输层,网络层,数据链路层,物理层 OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范 把...
非常不错的一本书,浅显的语言讲的很抽象的TCP/IP协议,以及OSI/RM的七层协议每一层协议都做什么。
介绍了TCP/IP协议基本内容,OSI七层模型,IP地址等
tcp/ip详解前3章学习笔记 osi七层模型 tcp/ip 4层协议系统 ip 路由选择
TCP/IP概述 20 3.1 TCP/IP的优点 20 3.2 TCP/IP的层和协议 21 3.2.1 体系结构 21 3.2.2 传输控制协议 21 3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路...
讲述的内容有: 1.网络分层; 2.网络的OSI七层协议 3.TCP/IP协议 4.OSI七层协议与TCP/IP协议的对比
网络模型一般是指OSI七层参考模型和TCP/IP四层参考模型。这两个模型在网络中应用最为广泛。 目录[隐藏] • • OSI模型概述 • • OSI参考模型的主要功能和任务 • • OSI参考模型中的...
1.主要功能 :用户接口、应用程序 2.典型设备:网关 1.主要功能 :数据的表示、压缩和加密 2.典型设备:网关 1.主要功能 :会话的建立和结束 2.典型设
3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 普通文件传输协议(TFTP) 26 3.6 简单邮件传输协议(SMTP) 26 3.7 网络...