This website houses notes from my studies at the University of Liverpool. If you see any errors or issues, please do open an issue on this site's GitHub.
A recap of the content is in Java Socket Programming Recap & Assignment 1. A socket is a door between the application process and the transport layer. There are two socket types, one for each transport layer (UDP/TCP). UDP There is no explicit connection between the client and the server:...
This lecture continues from The Application Layer - Network Applications. File Distribution for Client-Server Model To send a file to $N$ clients the server must upload $N$ file copies: Time to send one copy: $\frac F {u_s}$ Time to send $N$ copies $\frac{NF}{u_s}$ Each client must download a file copy:...
DNS allows host-names to be mapped to IP addresses: The DNS is implemented as a distributed database on a hierarchy of many name servers. It is implemented in the application-layer to put complexity at the network edge. DNS allows for the following: Host-name to IP address translation. Host aliasing. Mail...
Cookies Cookies are used to maintain user state. Many websites use four components to achieve this: Cookie header line of HTTP response message. Cookie header line in next HTTP request message. Cookie file kept on user’s host, managed by user’s browser. Back-end database at website. A cookie is just a...
A web page is a set of several referenced objects which are accessible by their URL: \[\underbrace{\text{www.someschool.edu}}_\text{host name}\text{/}\underbrace{\text{someDept/pic.gif}}_\text{path name}\] HTTP This is the application layer protocol for the web: It uses a client server model. Clients request and receive, servers can return objects in response to a request. HTTP uses...
Order of Execution SQL queries have the following order of execution: 6. SELECT 1. FROM 2. WHERE 3. GROUP BY 4. HAVING 5. ORDER BY Views Views are saved queries that you can use as virtual tables. Consider the following tables: Employees birthday first_name family_name e_id 1990-11-10 Anne Smith 1...
Only the first couple examples are included in these notes. See the lecture video for additional examples of regular expressions and their languages. Examples For the alphabet: \[\Sigma=\\{0,1\\}\] 0 followed by any nmber of 1s: \[01^* = 0(1^*) = \{0, 01, 011, 0111, \ldots\}\] 0 followed by any number of...
SMTP After the header, and before the body, of the email there must be a blank line. This is required for the assignment. DATA SUBJECT: Hello This is the body. . Java Sockets To open a socket use the code: import java.net.*; Socket socket = new Socket("ip.address", <port>); Reading Sockets...
Security is required in computer systems as they often handle money and customer data. Having these exposed could have costly repercussions to a company. You can break down the security requirements of a system into the following issues: Confidentiality Integrity Authentication & Authorisation Non-repudiation Availability can also be a requirement...