TCP和UDP进程和线程

本文介绍了TCP和UDP两种网络传输协议的区别,包括TCP的面向连接特性与UDP的无连接特性。同时,文章阐述了进程和线程的概念,通过火车与车厢的比喻解释了它们的关系和不同,包括资源分配、数据共享、错误处理等方面。此外,还简述了浏览器加载页面时涉及的DNS解析、TCP连接、HTTP请求和响应、页面解析及TCP关闭的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。
UDP是一个非连接的协议,传输数据之前源端和终端不建立连接, 当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。

进程是资源分配的最小单位,线程是CPU调度的最小单位
做个简单的比喻:进程=火车,线程=车厢
线程在进程下行进(单纯的车厢无法运行)
一个进程可以包含多个线程(一辆火车可以有多个车厢)
不同进程间数据很难共享(一辆火车上的乘客很难换到另外一辆火车,比如站点换乘)
同一进程下不同线程间数据很易共享(A车厢换到B车厢很容易)
进程要比线程消耗更多的计算机资源(采用多列火车相比多个车厢更耗资源)
进程间不会相互影响,一个线程挂掉将导致整个进程挂掉(一列火车不会影响到另外一列火车,但是如果一列火车上中间的一节车厢着火了,将影响到所有车厢)
进程可以拓展到多机,进程最多适合多核(不同火车可以开在多个轨道上,同一火车的车厢不能在行进的不同的轨道上)
进程使用的内存地址可以上锁,即一个线程使用某些共享内存时,其他线程必须等它结束,才能使用这一块内存。(比如火车上的洗手间)-"互斥锁"
进程使用的内存地址可以限定使用量(比如火车上的餐厅,最多只允许多少人进入,如果满了需要在门口等,等有人出来了才能进去)-“信号量”

浏览器地址栏输入地址按回车显示页面经过哪些过程

DNS解析:
      寻找资源所在的机器的过程,返回一个IP地址。递归和迭代解析,默认和使用较多的是递归。
      TCP连接:
           三次握手
发送HTTP请求:
           客服端向服务器发送请求,HTTP请求报文包括请求行、请求头部、请求体

服务器响应请求:
           服务器返还HTTP报文,包含响应行、响应头部、响应体。

浏览器解析:
           收到网页文件后进行解析,将资源呈现出来。

关闭TCP连接:
           四次握手。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值