Introduction to TCP/IP
目录
First Week
DHCP
(Dynamic Host Configuraton Protocol),动态主机配置协议。使用UDP协议工作。,给内部网络或网络服务供应商自动分配ip地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段。使用DHCP服务的时候,设置是自动的,没有必要联系本地网络管理员手动设置Internet连接。这也是移动设备常常使用DHCP的原因。并且DHCP允许重用IP地址,自动回收和再分配ip地址,拥有一个ip池,用于动态分配,对于ipv4的ip不够用的情况有着很好的缓解。
emmm,不过这样如果使用超负荷了,会产生无法及时分配的问题吧?
子网掩码
在没有子网的网络环境下,路由器通过IP地址的前八位来决定是哪一类型的网络,从而它们知道哪些是网络ID哪些是主机ID。划分子网时,路由器也需要知道主机ID是如何划分成子网ID与主机ID的,但是划分方法可以是任意组合,也没有办法从IP地址看出来。因此,必须有额外的信息告知解析IP地址的设备,这一信息称为子网掩码,以32比特数的形式呈现。
掩码位的1和0结合布尔函数与和或的功能对于地址中的比特位进行选择或清除。子网掩码中的32位对应于IP地址相同位置上的数字。掩码位为1时,则地址中该位作为网络ID或子网ID,而掩码位为0时,则地址中该位表示主机ID。
子网掩码为1:将IP地址中的0或1与1进行与操作,即:当子网掩码位为1,IP地址保持不变。
子网掩码为0:任何数和0做与操作都是0,即:当子网掩码位为0,IP地址清零。
关于ip子网划分的规则,整理一下再想想把。
ip路由表
路由表中的每一个路由项都具有五个类型。分为四大部分
网络地址(networkdestination)、网络掩码(netmask):网络地址和网络掩码相“与”的结果用于定义本地计算机可以到达的网络目的地址范围。
主机地址:某个特定主机的网络地址
子网地址:某个特定子网的网络地址
网络地址:某个特定网络的网络地址
默认路由:所有未在路由表中指定的网络地址
Second Week
ipv4
课中关于ipv4的介绍主要讲了ipv4的数据报格式。
字段 | 长度 | 含义 |
---|---|---|
版本 | 4bit | ip协议的版本号,分为ipv4和ipv6 |
首部长度 | 4bit | ipv4的首部长度 |
区分服务 | 8bit | 用来获得更好的服务,只有在使用区分服务时,这个字段才有作用 |
总长度 | 16bit | 首部和数据之和的长度 |
标识 | 16bit | ipv4软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段 |
标志 | 3bit | 目前只有两位有意义,最低位为1表示后面还有分片的数据报,为0表示这已经是最后一个数据片;中间一位为1表示不能分片,为0才允许分片 |
片位移 | 13bit | 指出较长的分组在分片后,该片在原分组中的相对位置 |
生存时间 | 8bit | 表示数据报在网络中的寿命,英文缩写是TTL(Time To Live),功能是“跳数限制” |
协议 | 8bit | 指出此数据报携带的数据是使用何种协议 |
首部检验和 | 16bit | 数据报每经过一个路由器,路由器都要重新计算一下首部检验和,若首部未发生变化,则此结果必为0,于是就保留这个数据报。这个字段只检验数据报的首部,但不包括数据部分 |
源地址 | 32bit | 报文发送方的ipv4地址 |
目的地址 | 32bit | 报文接收方的ipv4地址 |
选项字段 | 0-40字节 | 用来支持排错、测量以及安全等措施。在必要的时候插入值为0的填充字节。 |
数据部分 | 可变 | 用来填充报文 |
ipv6
最初的动机是为了解决32位ipv4地址空间被消耗殆尽。同时改造了格式。
在解释下ipv6的数据报格式。
TCP和UDP
TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂。
相对于UDP 面向非连接的UDP协议“面向非连接”就是在正式通信前不必与对方先建立连接,不管对方状态就直接发送。
UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去!
Third Week
NAT
网络地址转换,分为一对一和一对多,一对一被称为基本NAT,通过其实现了两个不兼容的寻址ip网络的互连。一对多被称为ip伪装,多个专用ip地址可以隐藏在外部使用的单个公共ip地址下,拥有增强的安全性。也可以节省公共ipv4地址。
RPC
远程过程调用,在远程计算机上执行的函数。 客户端通过发送带有一组的请求消息来启动RPC 远程服务器的参数和服务器回复客户端的响应。
FTP
文件传输协议, 在FTP活动模式下, 客户端将FTP命令端口M发送到服务器以通知要使用的端口。 服务器将数据从其FTP服务器数据端口发送到客户端的端口。
FTP数据传输模式包括流模式, 块模式和压缩模式。 流模式是,TCP用于发送数据 连续流和FTP进行最小化处理。 在块模式下,FTP将数据分成块并使用TCP进行传输。 在压缩模式下,数据压缩, 例如,应用了行程编码。 存在增强的数据传输技术。
分为POP3以及IMAP。 它们都是使用TCP和IP的电子邮件检索应用程序。 POP3代表邮局协议版本3。 IMAP代表Internet消息访问协议版本4。 可以使用通过TLS和STARTTLS或SSL进行的加密。
POP3将电子邮件从服务器转移到设备上。 在IMAP中,IMAP可以实现完整的管理 来自多个电子邮件设备(如PC)的服务器上的用户邮箱 ,智能手机,笔记本电脑和其他设备。
Fouth Week
Top Ranking Internet Attacks
取自2016年的数据,占据网络攻击最多的是浏览器攻击(Browser),攻击者将恶意软件伪装成应用程序或更新,使用网络钓鱼的技术。浏览器用户被欺骗下载隐藏的恶意软件,恶意软件攻击操作系统或其他应用程序。暴力攻击(Brute force)重复尝试解码密码。Dos攻击,拒绝服务攻击,通过攻击计算机,服务器,或者网络来阻止通信和服务。攻击者常常使用比目标可以处理的请求负荷更多的请求来超载目标。DDos,利用多台分布式计算机来进行Dos攻击。SSL攻击,SSL用于在两者之间建立安全加密保护链接,SSL攻击者会拦截用户信息,访问密码,cookie,身份验证令牌以及其他东西,来获得敏感隐信息。scans,攻击者扫描可以用于访问计算机的开放计算机端口,反复向计算机端口发送消息来查找安全漏洞。DNS攻击,DNS将域名转换为IP地址,攻击者可以将域名IP地址更改为错误的IP地址。后门攻击,通过使用开发人员的远程访问应用程序绕过安全程序。
Internet Security & Protection
IDS(入侵检测系统)检测网络设备中的恶意活动和违规策略的系统。检测结果会报告给网络管理员或者SIEM。IDPS(入侵检测和预防系统)结合IDS系统,可以做断线活动。防火墙,它监视所有发送和接受的数据包。当今包括应用层过滤技术,网络地址和端口过滤,ip数据包和传输协议的状态过滤器。TLS,一种玩咯加密协议,取代了SSL,使用2048bit加密。 TLS在网络应用程序之间提供隐私和数据完整性。 它使用对称密码和 使用为每个连接唯一生成的加密密钥。 现在,在会话设置时是 完成TLS握手协议以设置这些类型的加密密钥。 现在公钥加密是 用于验证通信系统的身份。 此外,消息验证代码用于确保数据完整性, 这是为了防止改变, 实际上也是由TLS处理的。
Fifth Week
wireshark
wireshark是非常流行的网络封包分析软件,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息。(在对各种网络协议有足够了解的前提下)
Introduction to TCP/IP的更多相关文章
- Introduction Sockets to Programming in C using TCP/IP
Introduction Computer Network: hosts, routers, communication channels Hosts run applications Routers ...
- TCP IP Socket In C, 2e-chapter 1 Introduction
本章是基础概念,建议补计算机网络基础,这里不全. 目录 1 网络,数据包,协议 2 关于地址(address) 2.1 IP地址格式 2.2 IPv4和IPv6共存 2.3 端口号 2.4 特殊地址 ...
- LINUX 中的 TCP/IP协议 参数详解
Ipsysctl tutorial 1.0.4 Prev Chapter 3. IPv4 variable reference Next https://www.frozentux.net/ipsys ...
- TCP/IP卷一:第一章
================================================= 版權聲明:如需轉載,請列明出處:HingAglaiaWong@博客園 支持原創,是對作者最好的的鼓勵 ...
- [心平气和读经典]The TCP/IP Guide(004)
The TCP/IP Guide [Page 44, 45, 46] Structure and Organization of The TCP/IP Guide | TCP/IP指南的组织结构 Yo ...
- [心平气和读经典]The TCP/IP Guide(001)
The TCP/IP Guide[Page 40,41] Introduction To the TCP/IP Guide | TCP/IP指南概述 As I sit here writing thi ...
- [心平气和读经典]The TCP/IP Guide(000)
The TCP/IP Guide [Page 39] The TCP/IP Guide: Introduction and "Guide to The Guide" | 第1章 概 ...
- Endless looping of packets in TCP/IP networks (Routing Loops)
How endless looping of packets in a TCP/IP network might occur? Router is a device used to interconn ...
- TCP/IP基础
TCP/IP 是用于因特网 (Internet) 的通信协议. 计算机通信协议是对那些计算机必须遵守以便彼此通信的规则的描述. 什么是 TCP/IP? TCP/IP 是供已连接因特网的计算机进行通信的 ...
随机推荐
- xcode 快捷键大全、XCode常用快捷键图文介绍
其实就是设置里面的快捷键变成了文字版,刚开始用Xcode是不是发现以前熟悉的开发环境的快捷键都不能用了?怎么快捷运行,停止,编辑等等.都不一样了.快速的掌握这些快捷键,能提供开发的效率. 其实快捷键在 ...
- ABAP术语-Business Object
Business Object 原文:http://www.cnblogs.com/qiangsheng/archive/2008/01/07/1028364.html Represents a ce ...
- Spring初始介绍
一.spring介绍 三层架构中spring位置: spring:对象的容器,相当于map容器,已经存好了相应的对象,而这三层对象(web层,service层,)进行创建时,不需要在进行new对象,s ...
- CentOS7下rsync服务的基本详解和使用
第1章 Rsync基本概述 1.1 什么是Rsync rsync是一款开源,快速,多功能的可实现增量的本地或远程的数据镜像同步备份的优秀工具.适用于多个平台.从软件名称可以看出来是远程同步的意思(re ...
- jQuery代码解释(基本语法)
html中jquery的以下用法 求解: var header = {}; header.ajaxCallComplete = false; header.login = false; header. ...
- 关于okHttp框架的使用
在之前的项目中,使用传统的HttpClient来返回一个图片信息流的时候总是报错,最后发现是因为传统的传输方式会对流的大小有限制,当超过某个值的时候就会报异常,最后决定使用OkHttp框架来解决这个问 ...
- Lavavel5.5源代码 - Pipeline
<?php class Pipeline { protected $passable; protected $pipes = []; protected $method = 'handle'; ...
- 软件的按契约设计(DbC---Design by Contract)
一.DbC基本概念 DbC的思想源于商业活动中商家和用户的行为(义务和利益关系),双方都要遵守一个契约(合同),交易才能完成. 商家与用户的契约关系如下: 1. 商家必须提供某种产品(义务),并有权获 ...
- tarnado源码解析系列一
目录 tarnado tarnado源码安装 tarnado测试程序 application类的解析 一. tarnado简介 最近在学习Python,无意间接触到的tarnado,感觉tarnado ...
- Leecode刷题之旅-C语言/python-111二叉树的最小深度
/* * @lc app=leetcode.cn id=111 lang=c * * [111] 二叉树的最小深度 * * https://leetcode-cn.com/problems/minim ...