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. 【二分+SPFA】修建道路(road)

    (四五年以前的老草稿,作为强迫症还是发布出来吧) 修建道路(road.pas/c/cpp) [问题描述] NOIP2012的参赛者LG异想天开打算修建一条磁悬浮列车的通道连接现代OI王国的首都(编号为 ...

  2. iOS APP 新增表情包拓展

    图示教程如下:

  3. github代码上传下载慢问题

    绑上下面的host,实测下载速度可提高2倍左右. 151.101.72.249 github.global.ssl.fastly.net

  4. git的应用

    对git的应用 (终于第一次用会git) 根据胡东晖同学的博客(使用git推送代码到开源中国以及IDEA环境下使用git)与热心指导,自己跟着做了,虽然途中出了很多很多问题,但是好在最后还是成功了!! ...

  5. Java使用BigDecimal解决精确计算的问题

    最近有人在微信上给我发了一个数学题目,如下图: 我看了之后感觉很是简单,但是却想了半天才解出来.解出来后我想到了用程序再解一遍,然而精确计算的问题却让人头疼不已. 解题思路: 思路其实很简单,暴力求解 ...

  6. IDEA 安装mybatis 插件 可以通过mapper定位到xml

    在使用IDEA的时候 ,通过mapper类定位到 xml文件是让人很头疼的问题! 无意中发现了这个插件!可以通过类方法直接定位到xml中!比较强大!哈哈! 这玩意好像是付费的! 不过不破解也能用! 哈 ...

  7. poj 2187:Beauty Contest(旋转卡壳)

    Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 32708   Accepted: 10156 Description Bes ...

  8. Xampp mysql启动

    因为最近项目要用到php,需要集成Xampp环境,但是并没有接触过php,从官网下载了Xampp后,基本上就是傻瓜式安装了, 完成安装界面如下: 点击Apache的start可以正常启动,点击MYSQ ...

  9. python x[:] x[::]用法总结

    python x[:] x[::]用法总结 X[:,0] # 二维数组取第1维所有数据 X[:,1] # 第2列 X[0,:] # 第1行 X[3,:] # 第三行 X[1:4,:] # 第一二三行 ...

  10. RabbitMQ入门(2)——工作队列

    前面介绍了队列接收和发送消息,这篇将学习如何创建一个工作队列来处理在多个消费者之间分配耗时的任务.工作队列(work queue),又称任务队列(task queue). 工作队列的目的是为了避免立刻 ...