Networking II 2020
When a client machine launches a web browser, an HTTP request is made to access a particular resource which is usually a web page on the remote server machine.
For example, if we navigate to http://www.bogotobogo.com, the browser uses Domain Name Service (DNS) that converts the registered URL into a 32-bit value (IP address). At this point, the browser opens a socket connection (port 80 for nonsecure connection) and sends the HTTP request for processing to the target site.
The web server receives the incoming HTTP request and process any client supplied input values in order to format a proper HTTP response. Web developer may use any technologies (CGI, ASP, ASP.NET, JSP, etc.) to dynamically generate the content to be emitted into the HTTP response. At this point, the client-side browser renders the HTML sent from the web server.
HTTP is a stateless protocol. In other words, as soon as the web server emits a response to the client, everything about the previous interaction is forgotten. This is clearly not the case for desktop applications, where the state of the executable is most often alive and running until the user shuts down the application.
So, it is up to us take specific steps to remember information about the users who are currently logged on to our site.
A web application is a collection of files such as *.html, *.asp, image files, XML data, and so on. It also consists of related components such as a .NET code library stored within a set of directories on a given web server. Web applications have a specific life cycle and have numerous events that we can hook into.
A web server is software which is in charge of hosting our web applications. It typically provides a number of related services such as security, FTP, mail exchange services, and so forth. Internet Information Services (IIS) is Microsoft's enterprise level web server. IIS has intrinsic support for classic ASP and ASP.NET web applications.
WebRequest and WebResponse are the common base classes for managing both HTTP and FTP client-side activity as well as the file: protocol. They encapsulate the request/response model that these protocols all share: the client makes a request, and then awaits a response from a server.
WebClient is a fa&#
Ph.D. / Golden Gate Ave, San Francisco / Seoul National Univ / Carnegie Mellon / UC Berkeley / DevOps / Deep Learning / Visualization