1.OSI (Open System Interconnect Protocol) 开放互联协议,这是一个七层的计算机网络协议,包括:物理层、数据链路层、网络层、传输层、回话层、表示层、应用层。
         TCP/IP (Transmission Control Protocol/ Internet Protocol): 传输控制协议 /因特网互联协议,这是一个四层的计算机网络模型,分别是:网络接口层、网络层、传输层和应用层。结合 OSI和TCP/IP 产生了一个五层结构:物理层、数据链路层、网络层、传输层、和应用层。当前使用的就是 TCP/IP协议的Internet
2. 集线器是工作在物理层,网卡工作在 OSI的物理层,交换机工作在数据链路层,而路由器是工作在网络层。
3.ARP 是地址解析协议,具体的工作原理就是:
          首先每一个主机都会在自己的 ARP缓冲区内简历一个ARP列表,以表示 IP地址和MAC 地址之间的对应关系;
          当源主机地址需要发送数据的时候,首先检查 ARP列表中是否有对应的IP地址的目的主机的 MAC地址,如果有的话,直接想目标的 MAC发送数据;如果没有的话,就像本网所有的主机发送 ARP数据包,该数据包的主要内容由:源主机的 IP地址,源主机的MAC地址,目的主机的 IP地址。
          当本网络的所有主机接收到给 ARP数据包的时候,首先检查数据包中的 IP地址是是否是自己的IP地址,如果不是的话,则忽略该数据包;如果是自己的主机的 IP地址,首先会从数据包中获取源主机的 IP和MAC 地址,写入到 ARP列表中,如果已经存在的话,则会直接覆盖掉,然后将自己的 Mac地址写入ARP 响应包中,告诉源主机自己的 MAC地址。
          源主机接收到 ARP响应包之后,将目的主机的 IP和MAC 地址写入 ARP列表,并且利用此信息发送数据。如果源主机一直没有收到 ARP响应的数据包,那么表示 ARP查询失败,主机不可见。
          广播发送 ARP请求,单播发送ARP响应。
4.DNS (Domain Name System)域名系统
         DNS 是Internet上面的一个核心的服务,他可以将域名和 IP地址之间相互映射的一个分布式数据库,便于 Internet访问,而不用用户区记忆 IP地址。DNS 使用的是端口 53,主要使用的是UDP传输协议,当然在服务器之间互相被备份的时候,会使用 TCP传输协议。
         DNS 一般是不会直接给用户使用,而是为其他应用服务的,如 HTTP,SMTP 协议的等等在其中需要完成主机名到 IP地址的转换。
5.TCP 和UDP的区别
         TCP 是提供面向连接的、可靠地数据流传输,但是 UDP提供的是非面向连接的不可靠的数据流传输。 TCP传输的单位是TCP报文段, UDP传输的单位是成为用户数据报。 TCP注重的是数据的安全性,但是 UDP目的值传输速度快,因为不需要等待连接,较少了很多的操作,但是安全性,数据完整性不保证。
6.ICMP 协议
         ICMP 是因特网控制报文协议( Internet Control Message Protocol). 他是TCP/IP 的一个子协议,用于在 IP主机、路由器之间的传递控制消息。控制消息是指网络通不通,主机是否科大、漏油器是否可用等网络本身的消息。这种消息虽然并不传输用户数据,但是对于用户数据的传输起着十分重要的作用。 ICMP报文有两种:差错报文和询问报文。
          他是一种面向连接的协议,用于传输出错报告控制信息。该协议属于网络层协议,主要用于在主机和路由器之间传递控制信息。当遇到 IP数据无法访问目标、IP路由器无法按照当前的传输速率转发数据包的情况的时候,会自动发送 ICMP信息。
         ICMP 协议是提供一致的易懂的出错报文信息。发送出的报文返回给源数据设备,因为只有发送者的设备才是出错报文的逻辑接受者。发送设备随后根据 ICMP报文信息确定发生错误的类型,并且确定如何才能够更好地重新发送失败的数据包。但是 ICMP的唯一功能是报告问题而不是纠正错误,纠正错误的认识是又发送方完成。
          经常使用 iCMP协议比如检查网络的畅通性,使用 ping就死ICMP 协议的工作过程,其他的网络命令也是如此基于 ICMP协议的。
         ICMP 攻击: 就是想 Server发送数据包,耗费Server资源。 Ping of Death:即使利用操作系统的一个漏洞,当 ICMP数据包的大小超过64k的上限的时候,主机就会出现内存分配错误的故障,导致 TCP/IP堆栈崩溃,致使死机的问题。(目前已经取消了对于 ICMP数据包的限制)但是如果向目标地址长时间连续的大量发送 ICMP数据包,也会致使系统瘫痪,形成 ICMP风暴,导致主机耗费大量的 CPU资源,疲于忙碌。
          防止Death of Ping的方法:可以采取两种方法进行防范:第一种方法是在路由器上对 ICMP数据包进行带宽限制,将 ICMP占用的带宽控制在一定的范围内,这样即使有 ICMP攻击,它所占用的带宽也是非常有限的,对整个网络的影响非常少;第二种方法就是在主机上设置 ICMP数据包的处理规则,最好是设定拒绝所有的 ICMP数据包.

TCP/IP网路协议复习的更多相关文章

  1. 计算机网络【1】—— OSI七层协议和TCP/IP四层协议

    新开一贴,专门用来记录计算机网络相关知识. 一.OSI七层协议 物理层.数据链路层.网络层.传输层.会话层.表示层.应用层 二.TCP/IP四层协议 网络接口层.网际层.运输层.应用层 三.五层协议 ...

  2. Linux--网络基础(概念+协议的了解+OSI七层模型,TCP/IP五层协议,网络数据传输流程)

    网络的发展 网络的发展有下面几个阶段: 独立模式:计算机最开始是以单机模式被广泛使用的.每一台计算机都是独立的,之间不能够进行数据共享与通信 网络互联: 计算机之间可以链接在一起,完成数据共享,计算机 ...

  3. 对TCP/IP网络协议的深入浅出归纳

    前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网 ...

  4. 转:对TCP/IP网络协议的深入浅出归纳

    转自:http://blog.jobbole.com/74795/ 前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没 ...

  5. 对TCP/IP网络协议的深入浅出归纳(转)

    前段时间做了一个开发,涉及到网络编程,开发过程比较顺利,但任务完成后始终觉得有一些疑惑.主要是因为对网络协议不太熟悉,对一些概念也没弄清楚.后来 我花了一些时间去了解这些网络协议,现在对TCP/IP网 ...

  6. TCP/IP网络协议的通俗理解,SOCKET,HTTP,SOAP

    TCP/IP,HTTP,SOAP等协议之区别   术语TCP/IP代表传输控制协议/网际协议,指的是一系列协议.“IP”代表网际协议,TCP和UDP使用该协议从一个网络传送数据包到另一个网络.把IP想 ...

  7. Linux学习(1)- TCP/IP网络协议基础

    Linux学习(1)- TCP/IP网络协议基础 一.TCP/IP 简介 学习内容 TCP/IP(Transmission Control Protocol/Internet Protocol)是传输 ...

  8. TCP/IP四层协议模型与ISO七层模型

    TCP/IP四层协议模型与ISO七层模型 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣经中上帝打乱了各地人的口音,让他 ...

  9. TCP/IP网络协议基础

    实验楼学习网络协议传送门 一.TCP/IP简介 TCP/IP(Transmission Control Protocol/Internet Protocol)是传输控制协议和网络协议的简称,它定义了电 ...

随机推荐

  1. BFC 详说 Block Formatting Contexts (块级格式化上下文)

    定位方案是控制元素的布局,在 CSS 2.1 中,有三种定位方案——普通流 (Normal Flow) .浮动 (Floats) 和绝对定位 (Absolute Positioning) ,下面分别对 ...

  2. fir.im 测试包下载工具--FIRReader 的图文介绍

    fir.im 是一个供开发者上传测试包(也可以是企业的正式包)的网站.该网站提供了接口访问应用资源.下面要介绍的这个应用对接了这些接口,供用户方便下载应用. 先来看下应用截图吧! 主要有以下功能点:1 ...

  3. 带你走进ajax(4)

    处理ajax返回数据类型 ajax返回数据类型:纯文本格式.xml.json 如果只获取简单的字符串可以采用纯文本格式. 如果返回的数据类型比较复杂,则采用xml或者json. 采用XML来处理数据 ...

  4. win7_32下编译FFmpeg

    运行环境:  VC2010软件:                 [附:本文所用软件安装包:http://download.csdn.NET/detail/sinat_36666600/9705438 ...

  5. C++ 第三十三天

    Ⅰ.类成员函数的隐式参数 T *const this . 就是说对于某个类的成员函数 returnType function() 的真实面目其实是这样的 returnType function(T * ...

  6. Centos下Nginx配置WEB访问日志并结合shell脚本定时切割

    在一个成熟的WEB系统里,没有日志管理是不可以的,有了日志,可以帮助你得到用户地域来源.跳转来源.使用终端.某个URL访问量等相关信息:通过错误日志,你可以得到系统某个服务或server的性能瓶颈等. ...

  7. 如何用纯 CSS 创作一只徘徊的果冻怪兽

    效果预览 在线演示 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/VdOKQG 可交互视频 ...

  8. SpringBoot ApplicationRunner/CommandLineRunner

    CommandLineRunner.ApplicationRunner 接口是在容器启动成功后的最后一步回调(类似开机自动启动). CommandLineRunner.ApplicationRunne ...

  9. 何为K-邻近算法

    答:K-邻近算法,英文为K-nearest neighbor(KNN),就是计算要测试对象与k个样本对象之间的距离,通过距离的大小来对测试对象进行分类

  10. uboot的FIT功能

    1.FIT介绍 Flattend Image Tree 英文原版介绍: FIT is formally a FDT, which can include images of various types ...