网络编程之tcp五层模型
网络编程
1.客户端与服务端架构:C/S B/S 架构
client <-------基于网络通信-------->server
brower<-------基于网络通信-------->server
server必须满足的条件:
①.稳定运行(网络、硬件、系统、应用软件),对外一直提供服务
②.服务端必须绑定一个固定的地址
2.什么是互联网
两大要素:①.底层的物理连接介质,是为通信铺好道路的
②.互联网通信协议(一套统一的通信标准)
3.协议:
任何通信协议都必须满足的两部分:
①.报头:必须固定长度
②.数据
4.tcp/ip五层:
物理层:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应0
数据链路层:单纯的0,1没有意义,该层定义了电信号的分组方式
网络层:引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址
传输层:建立端口(应用程序与网卡关联的编号)到端口的通信
应用层:用户使用的都是应用程序,规定应用程序的数据格式
5了解:.ip地址:点分十进制,0.0.0.0 – 255.255.255.255 每组是八位二进制
作用:为每一台计算机分配ip地址,另一个是确定哪些地址是在同一个子网络
基于网络的软件端口号:0-65535,其中.-1023为系统占用端口
6.ip+mac就能标识全世界范围内独一无二的一台计算机
ip+port就能标识全世界独一无二的一个应用软件
url:标识全世界内独一无二的一个资源
7.tcp协议:可靠传输,tcp数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常tcp数据包的长度不会超过数据包的长度,以确保单个tcp数据包不必再分割
udp协议:不可靠传输,报头部分一共只有八个字节,总长度不超过65535字节,正好放进一个ip数据包。
8.三次握手与四次挥手
9.半链接池:
限制的是同一时间的请求数,而非连接数
最新文章
- c#编程基础之字符串基础
- ubuntu上搭建review board代码评审站点
- Spring利用JDBCTemplate实现批量插入和返回id
- Java初学(八)
- Cocos2d-JS轻量级开发
- 夺命雷公狗jquery---1选择元素的3种方法
- soap
- JAVA设计模式之依赖倒转原则
- 精讚部落::MySQL 的MEMORY engine
- mysql5.6 rpm安装配置
- 时序数据库InfluxDB使用详解
- CPU的概念
- 老男孩python学习自修第八天【函数式编程】
- Kubernetes集群部署之四Master节点部署
- Some Websites To Learning Laravel
- InnoDB存储引擎--Innodb Buffer Pool(缓存池)
- 传统项目转前端工程化——路由跳转时出现浏览器锁死和白屏【该死的同步ajax】
- bzoj 4464 : [Jsoi2013]旅行时的困惑
- Python 文件路径
- eclipse 首次使用配置