导航:首页 > 网络数据 > 大数据tcp

大数据tcp

发布时间:2022-09-20 13:14:57

Ⅰ tcp和udp哪个适合大数据传输

高可靠性的TCP服务提供面向连接的服务,主要用于一次传输大量报文的情形

Ⅱ 求助,socket TCP每秒接收大量数据包,如何不掉包,详情请看内容

对于大数据包建议还是分段传送也就是你要自己写一个关于发送接收的协内议一次性读取或者发送是容一个不太好的做法虽然TCP在发送过程中会有数据的验证什么的但是如果缓冲区一下子就满了起始还是会丢失部分数据的建议分段发送跟分段接收既由客户端来决定发送的频率(假定1M的数据包分段称8K的一个小包那么就变成发送128次在客户端接收到其中的一个包假定是第N个在接收完了并且验证数据是正确的时候那么就在客户端发送给服务端一个请求的数据包让服务器发送第N+1个数据包依次处理)

Ⅲ TCP/IP协议

TCP/IP协议是一个协议集合,HTTP协议,IP协议,TCP协议,DNS协议等都属于TCP/IP协议。

TCP/IP协议是为了保证全球亿万台计算机能准确、无误的通信。

TCP/IP中分层是很重要的概念,每层完成不同的功能。分为应用层,传输层,网络层,数据链路层。分层的目的是为了层级之间的功能相对队里,互不影响。

TCP/IP通信数据流

    HTTP是基于TCP/IP协议的应用层协议,它不涉及数据包的传输,主要规定了客户端和服务器端的通信协议,默认端口是80

    IP协议的作用是将各种数据包准确无误的传递给对方,其中重要的条件是IP地址和MAC地址。由于IP地址是稀有资源,不可能每个人都有一个IP地址,所以我们通常的IP地址都是路由器给我们生成的IP地址,路由器里面会记录我们的MAC地址,而MAC地址是唯一的。

    IP实现的两个基本功能:寻址和分段

    寻址功能就是原地址和目标地址之间建立连接,需要使用ARP协议(Address Resolution Protocol),IP协议就是找到一条连接两台电脑的路径,从而完成数据的交互。

    地址解析协议,ARP协议,是根据IP地址获取物理地址的一个TCP/IP协议。IP间的通信依赖MAC地址。在进行中转时,会利用下一站中转设备的MAC地址来搜索下一个中转目标,这时就会采用ARP协议,根据通讯放的IP地址就可以反查出对应的MAC地址,从而进行精确的定位,完成寻址的功能。

    分段功能是为了适应不同网络对包的要求,对数据进行重新组装。

    TCP协议就是将数据包安全的给对方,IP协议是找到对方的详细地址,分工不同,互不冲突。

    TCP属于传输层,提供可靠的字节流服务。字节流类似于数据切割,为了方便传输,将大块数据分割成以报文段(segment)为单位的数据包进行管理。可靠的传输服务是指,能够把数据准确可靠的传给对方。TCP协议为了更容易的传输大数据才将数据进行分割,而且TCP协议能够确认数据最终是否送达对方。

    为了确保信息准确无误的送达,TCP采用了三次握手策略(three-way-handshaking)。TCP建立连接时需要三次握手,在关闭连接时还需要四次握手。 这部分占用了http请求过程的中大量时间,在高并发时,可以考虑优化这部分。

    和HTTP协议一样是处于应用层的服务,提供域名到IP地址之间的解析服务。

    1、可缓存:get请求能缓存,post请求不能;响应报文的状态码是可缓存的,包括:200, 203, 204, 206, 300, 301, 404, 405, 410, 414, and 501。

    2、get是获取资源,post用于传输实体主体。

    3、参数:get请求的参数在url里面,会被浏览器保存历史记录,post的请求数据在数据包里面,同时因为url只支持ASCII码,因此get的参数如果存在汉字就要先进性编码,post请求支持更多的编码类型且不对数据类型限制;post传输的数据比get的多;url的长度有限制,会影响get请求;

    4、安全的HTTP方法不会改变服务器状态,也就说是只读的。所以get是安全的,post不是安全的。

    5、幂等性:get是幂等的,post不是幂等的。

    6、XMLHttpRequest: 在使用XMLHttpRequest时,post请求发送时,浏览器会先发送header再发送Data;get请求header和data一起发送。

    XMLHttpRequest 是一个 API,它为客户端提供了在客户端和服务器之间传输数据的功能。它提供了一个通过 URL 来获取数据的简单方式,并且不会使整个页面刷新。这使得网页只更新一部分页面而不会打扰到用户。XMLHttpRequest 在 AJAX 中被大量使用。

        200 OK,表示从客户端发来的请求在服务器端被正确处理。

        204 No content,表示请求成功,但是想要报文不包含实体的主体部分。

        206 Partial Content ,进行范围请求。

        301 moved permanently 永久性重定向,表示自愿一杯分配了新的URL。

        302 found 临时性重定向,表示自愿临时被分配了新的URL。

        303 see other 表示资源存在着另一个URL,应使用GET方法获取资源。和 302 有着相同的功能,但是 303 明确要求客户端应该采用 GET 方法获取资源。

        注:虽然 HTTP 协议规定 301、302 状态下重定向时不允许把 POST 方法改成 GET 方法,但是大多数浏览器都会在 301、302 和 303 状态下的重定向把 POST 方法改成 GET 方法。

        304 not modified 表示服务器允许访问资源,但因发生请求未满足条件的情况。

        307 temporary redirect,临时重定向,和302含义相同。但是 307 要求浏览器不会把重定向请求的 POST 方法改成 GET 方法。

        400 bad request 请求报文存在语法错误

        401 unauthorized 表示没有权限

        403 forbidden 表示对请求资源的访问被服务器拒绝

        404 not found 表示在服务器上没有找到请求的资源

        500 internal sever error 表示服务器端在执行请求时错误

        503 service unavailable 表明服务器暂时处于超负载或正在停机维护,无法处理请求

    HTTPS是HTTP建立在SSL/TLS安全协议上的。

    在IOS中,客户端本地会存有CA证书,在HTTPS请求时,会首先向服务器获取公钥,获得公钥后会使用本地的CA证书验证公钥的正确性,然后通过正确的公钥加密信息发送给服务器,服务器会使用私钥解密信息。

    SSL/TSL握手阶段分为五步:

    HTTP和HTTPS的对比:

    HTTP:无状态,协议对客户端没有状态存储;无连接,每次请求都会和服务器重新建立连接;基于请求和响应,由客户端发起,服务端响应;简单快速,灵活;使用明文,请求和响应不会对通信方进行确认,无法保证数据的完整性。

    HTTPS:内容加密,采用混合加密技术,中间者无法直接查看明文内容;验证身份,通过证书认真客户端访问的是自己的服务器;保护数据完整性,放置传输的内容被中间人冒充或篡改。

Ⅳ 【web】TCP和UDP、HTTP的区别

(1) TCP是面向连接的,UDP是无连接的 ,即发送数据前不需要先建立链接。

(2) TCP提供可靠的服务 。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付。 并且因为tcp可靠,面向连接,不会丢失数据因此适合大数据量的交换。

(3) TCP是面向字节流,UDP面向报文 ,并且网络出现拥塞不会使得发送速率降低(因此会出现丢包,对实时的应用比如IP电话和视频会议等)。

(4) TCP只能是1对1的,UDP支持1对1、1对多 。

(5) TCP的首部较大 为20字节,而UDP只有8字节。

(6)TCP是面向连接的可靠性传输,而UDP是不可靠的。

(7) TCP和UDP都是传输层的协议,HTTP是在应用层的一个协议

(8)HTTP协议基于请求\响应模型的,并且是 基于TCP协议 的。

HTTP协议是建立在请求/响应模型上的。首先由客户建立一条与服务器的TCP链接,并发送一个请求到服务器,请求中包含请求方法、URL、协议版本以及相关的MIME样式的消息。服务器响应一个状态行,包含消息的协议版本、一个成功和失败码以及相关的MIME式样的消息。

(9)HTTP/1.0为 多次的TCP 链接,HTTP/1.1提出了可持续链接即只建立 一次TCP链接 。

因此一个包含HTML内容和图片的页面将需要建立多次的短期的TCP链接。一次TCP链接的建立将需要3次握手。另外,为了获得适当的传输速度,则需要TCP花费额外的回路链接时间(RTT)。每一次链接的建立需要这种经常性的开销,而其并不带有实际有用的数据,只是保证链接的可靠性,因此HTTP/1.1提出了可持续链接的实现方法。HTTP/1.1将只建立一次TCP的链接而重复地使用它传输一系列的请求/响应消息,因此减少了链接建立的次数和经常性的链接开销。

Ⅳ TCP是什么

TCP是传输控制协议。

TCP(Transmission Control Protocol)是网络通信模型OSI7层网络模型中,第四层传输层协议,主要作用是数据传输,TCP 主要确保不同节点之间的端到端数据传输。

在因特网协议族中,TCP 层是位于 IP 层之上,应用层之下的中间层,是一种面向连接的、可靠的、基于字节流的传输层通信协议。

在传输过程中,为保证传输质量,TCP 层将大数据分成长度合适的较小的数据包,分别发送,并确保在目标节点重组后数据完整性保持不变。

(5)大数据tcp扩展阅读:

1、应用层与TCP之间:应用层向 TCP 层发送用于网间传输的数据流,这些数据流是 8 位字节,TCP收到后会把数据流分割成适当长度的报文段。

2、TCP层和IP层:TCP 把适当长度的报文段传给 IP 层,为了保证不发生丢包,TCP会把每个包命名一个序号,接收端按照序号接收。

3、接收端实体成功收到的包会再发回一个确认ACK;如果发送端实体在响应时间内没有收到该确认,就会进行重传。

Ⅵ 大数据时代 tcpip协议适用吗

ip网络是大数据平台的基础啊
可以说是计算,网络和存储的基础

Ⅶ 如何选用udp/tcp技术提高大数据传输性能

提高移动硬盘传输速度方法: 1、把移动硬盘插在电脑上,电脑会提示有新的回USB设备接入;答等电脑提示新硬件已经安装并可以使用,在“我的电脑”上点击【右键】,选择【管理】。 2、打开“计算机管理”窗口。 3、选择“磁盘管理器”。 4、在“磁盘管理器”上...

Ⅷ TCP UDP 分段 IP分片

udp ip学习博客

3次握手4次挥手

链路层 MTU 最大传输单元 1500 MISS最大分段

TCP 层     数据  tcp +Data

TCP+MISS+id2

D1<MISS

ip +TCP+D1+id2

tcp+D1+id2

tcp一段一段(D1)传 传成功了在传第二段(D2)  数据编号id1

包活计时器  2h    2h后没有对方确认收到  每75秒之后会发送探测包 发送10次 还是没有回应 则失败

UDP(用户数据报协议)-短信

只管发送,不确认对方是否接收到

将数据及源和目的封装成数据包中,不需要建立连接

每个数据包的大小限制在64K之内

因为无需连接,因此是不可靠协议

不需要建立连接,速度快

应用场景: 视频直播,游戏LOL

TCP(传输控制协议)

建立连接,形成传输数据的通道

在连接中进行大数据传输(数据大小不收限制)

通过三次握手完成连接,是可靠协议,安全送达

必须建立连接,效率会稍低

数据链路层 不能大于1500个字节 数据太多必须分片

我们知道,当应用层程序之间进行网络数据传输时,在发送端,数据会从应用层沿着协议栈向下传输,通过TCP/IP层,然后经由链路层发送出去,而在接收

端,则是相反的顺序,数据经由链路层接收,然后沿着协议栈向上传输,通过IP/TCP层,最后由应用层程序进行读取。

而在IP层往链路层传输数据的时候,往往会做一个分片的操作,对于大多数链路层来讲,它都有一个最大传输单元(MTU),表示能够发送数据量的大小,它是由硬件决定的。比如以太网的MTU为1500字节。当IP层传输给链路层的数据量大于其MTU时,那么IP层就会将数据拆分为小于其链路层MTU的数据片,再传输给链路层进行发送 ,但是对于不同的传输层协议(TCP/UDP)来说,在IP层上,需不需要进行分片是不同的

TCP层的分片

对于TCP来说,它是尽量避免分片的,为什么?因为如果在IP层进行分片了话,如果其中的某片的数据丢失了,对于保证可靠性的TCP协议来说,会增大重传,数据包的机率,而且只能重传整个TCP分组(进行IP分片前的数据包),因为TCP层是不知道IP层进行分片的细节的,也不关心。

当TCP层进行TCP分组的重传后,还会直接影响到应用层程序的性能,特别是在应用程序使用阻塞IO进行读写的时候。要理解这点,首先我们要知道当

应用层程序往TCPIP协议栈写数据的时候都做了些什么事。

在应用层程序中,我们可以有自己的发送缓冲区,而TCP层本身也有自己的一个发送缓冲区,默认情况下一般是8k大小,可以通过SO_SNDBUF设置或读取。 当我们在应用层往TCP层写数据的时候,实际上是将应用层发送缓冲区的数据拷贝到TCP层的发送缓冲区中。当TCP层的发送缓冲区满或者网络空闲时,TCP层就 会将其缓冲区中的数据通过IP层传到链路层的发送队列中。如果TCP层的发送缓冲区满而且应用层的数据没有写完时,内核会将write系统调用挂起,并不返回给应用层程序,直到应用层的数据全部拷贝到TCP层的缓冲区中。而由于TCP层要保证数据包的可靠性,即数据包丢失时要进行重传,那么TCP层在往网络发送TCP分组后,需要在其发送缓冲区中暂时保存发出的TCP分组数据用于后续可能的重传。

在这样的前提下,如果IP对来自TCP层的数据进行了分片, 那么就有可能使得应用层程序一直在write系统调用处挂起等待,引起性能的下降。

TCP层如何避免IP层的分片

首先,我们先回顾下TCP建立连接的3次握手:

在这3次握手中,除了确认SYN分节外,通信的两端还进行协商了一个值,MSS,这个值用来告诉对方,能够发送的TCP分节的大小。这个值一般是取其链路层的MTU大小减去TCP头部大小和IP头部的大小。 MSS=MTU-TCP头部大小-IP头部大小.  MTU的值可以通过询问链路层得知。当两端确认好MSS后进行通信,当TCP层往IP层传输数据时,如果TCP层缓冲区的大小大于MSS,那么TCP层都会将其发送缓冲区中的数据切分成MSS大小的分组进行传输,由于MSS是通过MTU减去TCP头部大小和IP头部的大小计算得出的,MSS肯定比MTU小,那么到IP层的时候就可以避免IP层的分片。

UDP层的分片

如果我们采用的是UDP协议而不是TCP协议呢?在IP层会不会进行分片?由于UDP是不需要保证可靠性的,那么它就不会保存发送的数据包,TCP之所以保存发送的数据包是因为要进行重传。所以UDP本身是没有像TCP一样的发送缓冲区的。这就导致了对UDP进行write系统调用的时候,实际上应用层的数据是直接传输到IP层,由于IP层本身也不会有缓冲区,数据就会直接写到链路层的输出队列中。在这种情况下,IP层会不会对来自UDP的数据进行分片呢?这个取决于UDP数据报的大小。如果UDP数据报的大小大于链路层的MTU,那么IP层就会直接进行分片,然后在发送到链路层的输出队列中,反之,则不会进行分片,直接加上IP头部发送到链路层的输出队列中。

TCP/UDP实验

看完了理论,让我们实践一把,看是否与以上的理论相符。

对于TCP来说,它是尽量避免分片的。假设我们这里要发送给TCP层的数据大小为2748个字节,这个大小是明显大于链路层的发送数据的大小的,在这个情况

下我们来看,对于来自TCP层的数据,IP会不会进行分片。

从第一张图看来,应用层的2748个字节在TCP层就进行了分段,分层了两个TCP段,一个1460字节,一个1288字节。那么到IP层的时候,自然就不会在进行分片了。

从第二张图片看出,在这两个TCP分段中,在序号3处,IP的头部字段 (Don ' t Fragment) 被设置了,用于告诉IP层不要对该数据进行分片。

而对于MSS大小的协商,我们可以从下面这张图片看到,下面的图片是TCP CLIENT发出的第一个SYN TCP分段:

对于UDP来说,假设我们要发送的一个UDP数据包大小为1600个字节,那么在实际上通过UDP/IP分发出去的时候,会不会进行分片呢? 看如下的图片: 

从上面的图片可以看出,我们发送的数据包的大小为1600字节(序号1处),在UDP层,长度为1608字节(序号2处),这里的8个字节是UDP的头部字段的长度, 到了IP层(序号3处),我们可以清楚的看到IP对UDP数据包进行了分片,一个大小为1480字节,一个为128字节.

区别:

1.IP分片产生的原因是网络层的MTU;TCP分段产生原因是MSS.

2.IP分片由网络层完成,也在网络层进行重组;TCP分段是在传输层完成,并在传输层进行重组.   //透明性

3.对于以太网,MSS为1460字节,而MUT往往会大于MSS.

 故采用TCP协议进行数据传输,是不会造成IP分片的。若数据过大,只会在传输层进行数据分段,到了IP层就不用分片。

而我们常提到的IP分片是由于UDP传输协议造成的,因为UDP传输协议并未限定传输数据报的大小。

Ⅸ DNS何时使用TCP协议,何时使用UDP协议

刚被设计出来的 DNS 就会同时使用 UDP 和 TCP 协议,对于绝大多数的 DNS 查询来说都会使用 UDP 数据报进行传输,TCP 协议只会在区域传输(它的作用就是在多个命名服务器之间快速迁移记录,由于查询返回的响应比较大,所以会使用 TCP 协议来传输数据包)的场景中使用,其中 UDP 数据包只会传输最大 512 字节的数据,多余的会被截断;DNS 记录中存储的数据会越来越多,同时显示的指出了发现 UDP 包被截断时应该通过 TCP 协议重试。

使用 UDP 进行传输的 DNS 查询和响应最大不能超过 512 字节,不能支持大量 IPv6 地址或者 DNS 安全签名等记录的传输;

EDNS 为 DNS 提供了扩展功能,让 DNS 通过 UDP 协议携带最多 4096 字节的数据;能够帮助我们在一定程度上解决大数据包被截断的问题,减少了使用 TCP 协议进行重试的需要,但是由于最大传输单元的限制,这并不能解决所有问题。所以提出了使用 TCP 协议作为主要协议来解决 UDP 无法解决的问题,TCP 协议也不再只是一种重试时使用的机制

现在的网路状况使我们不仅遇到了 IPv4 即将无法分配的状况,而且还需要引入 DNSSEC 等机制来保证 DNS 查询和请求的完整性以及传输安全,总而言之,DNS 协议需要处理的数据包越来越大、数据也越来越多,但是『为什么当需要传输的数据较多时我们就必须使用 TCP 协议呢?』,如果继续使用 UDP 协议就不能完成 DNS 解析么。

从理论上来说,一个 UDP 数据包的大小最多可以达到 64KB,这对于一个常见的 DNS 查询其实是一个非常大的数值;但是在实际生产中,一旦数据包中的数据超过了传送链路的最大传输单元(MTU,也就是单个数据包大小的上限,一般为 1500 字节),当前数据包就可能会被分片传输、丢弃,部分的网络设备甚至会直接拒绝处理包含 EDNS 选项的请求,这就会导致使用 UDP 协议的 DNS 不稳定。

TCP 作为可靠的传输协议,可以非常好的解决这个问题,通过序列号、重传等机制能够保证消息的不重不漏,消息接受方的 TCP 栈会对分片的数据重新进行拼装,DNS 等应用层协议可以直接使用处理好的完整数据。同时,当数据包足够大的时候,TCP 三次握手带来的额外开销比例就会越来越小,与整个包的大小相比就会趋近于 0

所以,我们在 DNS 中存储较多的内容时,TCP 三次握手以及协议头带来的额外开销就不是关键因素了,不过我们 TCP 三次握手带来的三次网络传输耗时还是没有办法避免的,这也是我们在目前的场景下不得不接受的问题。

很多人认为 DNS 使用了 UDP 协议来获取域名对应的 IP 地址,这个观点虽然没错,但是还是有一些片面,更加准确的说法其实是 DNS 查询在刚设计时主要使用 UDP 协议进行通信,而 TCP 协议也是在 DNS 的演进和发展中被加入到规范的:

DNS 查询选择 UDP 或者 TCP 两种不同协议时的主要原因:

无论是选择 UDP 还是 TCP,最核心的矛盾就在于需要传输的数据包大小,如果数据包小到一定程度,UDP 协议绝对最佳的选择,但是当数据包逐渐增大直到突破 512 字节以及 MTU 1500 字节的限制时,我们也只能选择使用更可靠的 TCP 协议来传输 DNS 查询和相应。

为什么 DNS 会使用 UDP 协议,假如使用 TCP 协议又会发生什么呢?

Ⅹ UDP、TCP 协议的区别

一、TCP协议


TCP位于传输层, 提供可靠的字节流服务。所谓的字节流服务(Byte Stream Service) 是指, 为了方便传输, 将大块数据分割成以报文段(segment) 为单位的数据包进行管理。 而可靠的传输服务是指, 能够把数据准确可靠地传给对方。 即TCP 协议为了更容易传送大数据才把数据分割, 而且 TCP 协议能够确认数据最终是否送达到对方。所以,TCP连接相当于两根管道(一个用于服务器到客户端,一个用于客户端到服务器),管道里面数据传输是通过字节码传输,传输是有序的,每个字节都是一个一个来传输。

(1)、三次握手:握手过程中使用了 TCP 的标志(flag) —— SYN(synchronize) 和ACK(acknowledgement) 。

第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。
第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RECV状态。
第三次握手:客户端A收到服务器B的SYN+ACK包,向服务器B发送确认包ACK(ACK=k+1),此包发送完毕,完成三次握手。

此外,还有快速重传和快速恢复,停止-等待协议,回退N帧协议,选择重传协议等。

二、UDP协议:

无连接协议,也称透明协议,也位于传输层。

三、两者区别:

1) TCP提供面向连接的传输,通信前要先建立连接(三次握手机制); UDP提供无连接的传输,通信前不需要建立连接。
2) TCP提供可靠的传输(有序,无差错,不丢失,不重复); UDP提供不可靠的传输。
3) TCP面向字节流的传输,因此它能将信息分割成组,并在接收端将其重组; UDP是面向数据报的传输,没有分组开销。
4) TCP提供拥塞控制和流量控制机制; UDP不提供拥塞控制和流量控制机制。


四、长连接和短连接


HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。 IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠地传递数据包,使得网络上接收端收到发送端所发出的所有包,并且顺序与发送顺序一致。TCP协议是可靠的、面向连接的。

在HTTP/1.0中默认使用短连接。也就是说,客户端和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。当客户端浏览器访问的某个HTML或其他类型的Web页中包含有其他的Web资源(如JavaScript文件、图像文件、CSS文件等),每遇到这样一个Web资源,浏览器就会重新建立一个HTTP会话。

而从HTTP/1.1起,默认使用长连接,用以保持连接特性。使用长连接的HTTP协议,会在响应头加入这行代码

Connection:keep-alive
在使用长连接的情况下,当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,客户端再次访问这个服务器时,会继续使用这一条已经建立的连接。Keep-Alive不会永久保持连接,它有一个保持时间,可以在不同的服务器软件(如Apache)中设定这个时间。实现长连接需要客户端和服务端都支持长连接。

HTTP协议的长连接和短连接,实质上是TCP协议的长连接和短连接。

阅读全文

与大数据tcp相关的资料

热点内容
炉石传说2016大数据 浏览:729
bios文件格式 浏览:683
看苏州APP怎么没有苏州四套 浏览:307
除了数据线笔记本与手机如何连接 浏览:575
苹果新机分几个 浏览:841
struts2resultjsp 浏览:403
七个星期五app怎么切换中文 浏览:342
华为路由器console登录密码设置 浏览:682
测试大数据包 浏览:801
新网站如何做好优化 浏览:703
晋江共享电动汽车app 浏览:997
90版本女机械师加点 浏览:527
微信支付普通网站 浏览:370
小学试卷的网站有哪些 浏览:338
我不想升级win10 浏览:858
linux无法重启 浏览:216
pdf格式文件怎么涂鸦 浏览:831
苹果手机6splus调节震动 浏览:501
iphone系统图标替换 浏览:365
文件名和扩展名是什么 浏览:148

友情链接