Headers, Caching, HTTP Sessions and how they are implemented, Cookies and CORS
The TCP/IP stack, DNS, Routers, DHCP, Load Balancing, Virtualization
Sockets Ports and IP-numbers. Socket Programming (TCP and UDP)
SSL and HTTPS intro. How to set up DO with a domanin name, Nginx and SSL
- Understand and use properties in the HTTP protocol, like Headers, Caching, HTTP Sessions and Cookies
- Understand the Same Origin Policy related to REST and how to solve problems using CORS
- Understand, at a conceptual level, the concepts in the underlying structure of the internet
- Understand the Concepts Ports and IP and the Protocols TCP and UDP.
- Know how to implement simple, multi-threaded, TCP (UDP) servers in Java
- Understand the concept Virtualization
- Understand and Implement modern Server Architectures
- Understand and use concepts required to setup a Server with a domain name, Reverse Proxy and SSL
This week will provide students with:
- The necessary background to implement and code user defined network protocols on top of TCP or UDP.
- The minimal network knowledge, required to setup a Web Server Infrastructure used by a professional web-application
- Day-1
- Day-2
- Day-3 (Java Socket Programming
- Setup your Droplet (and leave it running until after the exam) as explained here
Read/Skim the first 16 pages in the first document below (by know it should be familar stuff)
Skim the rest of the articles as backgrund for the individual HTTP exercises
Before anything else you MUST watch this video. It's a bit outdated, but still one of the most genius educational videos ever made
Read the first article to get an idea about the TCP/IP Protocol Stack (a complete understanding of this stack could take a full period)
These are practiacal tools which you should know about (what can each of them can do). We don't provide references, but use Google (before and during) the lesson:
- nslookup
- ipconfig (MAC/Linux ifconfig)
- Ping
- Netstat
- TraceRoute (Windows tracert)
- Telnet
- Socket Progamming in Java (video) If you like a Visual Presentaion of a problem, you should really watch this video before todays lecture
- All About Sockets (Oracle Tutorial)
- A guide to Java Sockets (Read, Code and understand this example, and you will know what you need to know for CA-2)