2015百度android开发岗位的一道简答题:TCP、UDP、HTTP之间的关系

题目:TCP、UDP之间的关系,TCP与HTTP之间的关系。

运输层主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。

TCP为两台主机提供高可靠的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠的端到端的通信,因此应用层可以忽略所有这些细节。而另一方面,UDP则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据能到达另一端。任何必须的可靠性必须由应用层来提供。

HTTP(超文本传输协议)是利用TCP在两台电脑(通常是Web服务器和客户端)之间传输信息的协议。客户端使用Web浏览器发起HTTP请求给Web服务器,Web服务器发送被请求的信息给客户端。TCP是一种允许我们安全传输数据的机制,使用TCP协议来传输数据的HTTP是Web服务器和客户端使用的特殊协议。

时间: 2024-10-07 18:39:04

2015百度android开发岗位的一道简答题:TCP、UDP、HTTP之间的关系的相关文章

android 中View, Window, Activity, WindowManager,ViewRoot几者之间的关系

(1)View:最基本的UI组件,表示屏幕上的一个矩形区域. (2)Window: 表示一个窗口,不一定有屏幕那么大,可以很大也可以很小: 它包含一个View tree和窗口的layout 参数. View tree的root View可以通过getDecorView得到.还可以设置Window的Content View. (3)Activity:Activity包含一个Window,该Window在Activity的attach方法中通过调用 PolicyManager.makeNewWind

android 网络编程--socket tcp/ip udp http之间的关系

网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层,一般编程人员接触最多的就是应用层和运输层,再往下的就是所谓的媒体层了,不是我们研究的对象. 下面是应用层.运输层,网络层.链路层通信协议概图.我们经常接触到的一般是: http协议:应用层协议,并且http协议是基于tcp连接的,主要解决的是如何包装协议的 tcp协议:运输层协议,通常也叫做tcp/ip协议,主要解决数据如何在网络中传输 udp协议:运输层协议,用户数据报协议,不可靠的协议,只负责把应用层的协议的数

2015年Android开发新技术盘点

又到年末. 利用中午的时间,汇总盘点一下今年Android开发方面的新技术.感觉如今Android开发没有曾经那么纯粹了,出现了非常多新的开发模式. 2015年影响比較普遍的新技术应该就是Material Design了,毕竟如今的新手机系统基本都升到Android5.1了, 个别的手机已经升到Android 6了,其他比如DataBinding, RxAndroid.React native等的眼下还是非常小众,没有流行起来. 这几年在前端开发领域高速发展的影响下.Android开发也出现了非

2015年Android开发新技术

开发工具 Android Studio : Google 官方放弃 Eclipse 和Android Studio 普及.AS 虽然不算新,但是对 Android Studio 这个软件的更新速度快的惊人,有大量的新功能发布.例如支持很多注解代码提示注解.Live code template.支持自动生成 Parcelable 实现等等,作为开发者,持续关注这个更新列表 Recent Changes,一定会让你的写代码的生活更加美好. 编程语言 Kotlin: 作为 Android 领域的 Sw

2015:WPS笔试-Android开发岗位

题目一共三道: 一:实现一个函数,可以判断两条直线的关系:平行.重合.垂直或相交. 二:实现一个函数,可以得到任意两个日期的相隔天数. 三:针对题目一或题目二,实现一个完整的单元测试. (笔试后在网上搜到了去年的题目,竟然完全一样.完全一样...可见刷题的重要性. ) 题目一:(占坑) 题目二: 当时只想到了最基本的判断,即相隔天数=相隔年数*365+相隔月份*(31/30/28/29)+相隔天数. 可惜闰年算法写错了... 若要判断某年份是否為闰年,请依照下列步驟执行: 若该年份可以被 4 整

2015年Java开发岗位面试题归类

一.Java基础 1. String类为什么是final的. 2. HashMap的源码,实现原理,底层结构. 3. 说说你知道的几个Java集合类:list.set.queue.map实现类咯... 4. 描述一下ArrayList和LinkedList各自实现和区别 5. Java中的队列都有哪些,有什么区别. 6. 反射中,Class.forName和classloader的区别 7. Java7.Java8的新特性(baidu问的,好BT) 8. Java数组和链表两种结构的操作效率,在

android开发笔记之网络编程—使用TCP协议和URL进行网络编程

手机本身是作为手机终端使用的,因此它的计算能力,存储能力都是有限的.它的主要优势是携带方便,可以随时打开,而且手机通常总是处于联网状态.因此网络支持对于手机应用非常重要. Android完全支持JDK本身的TCP,UDP网络通信API,也可以使用ServerSocket,Socket来建立基于TCP/IP协议的网络通信,也可以使用DatagramSocket,Datagrampacket来建立基于UDP协议的网络通信. Android也支持JDK提供的URL,URLConnection等网络通信

Android开发系列(十三):Intent实现Activity之间的转换以及startActivityForResult传递参数

一.Intent实现Activity之间的切换 1.构造函数法: Intent intent = new Intent(this , OtherActivity.class); //两个参数:第一个是上下文对象,第二个是要切换的Activity的class字节码 startActivity(intent); 2.setClass方法: Intent intent = new Intent(); intent.setClass(this, OtherActivity.class); //设置要激活

当前Android开发人员如何提升岗位竞争力

作为一名IT行业的从业者,目前也在带移动互联开发团队,所以我来回答一下这个问题.随着移动互联网的快速发展,整个IT行业释放出了大量的Android开发岗位,由于Android开发采用了Java开发语言,所以Android开发在短期内就汇聚了大量的开发人员.但是随着移动互联网发展红利逐渐退去,目前Android开发人员的需求量也趋于平稳,岗位竞争也日趋激烈. 在当前的移动互联网环境下,Android开发人员要想提升自身的岗位竞争力,可以从以下几个方面着手:第一:进一步丰富自身的知识结构.当前不少开