From f8f636805992524224aea362539326bc628dc8c3 Mon Sep 17 00:00:00 2001 From: Jet Hughes Date: Mon, 17 Oct 2022 12:28:03 +1300 Subject: [PATCH] vault backup: 2022-10-17 12:28:03 --- content/notes/17-app-layer.md | 41 ++++++++++++++++++++++++++++- content/notes/18-transport-layer.md | 9 +++++++ content/notes/cosc-203.md | 2 +- 3 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 content/notes/18-transport-layer.md diff --git a/content/notes/17-app-layer.md b/content/notes/17-app-layer.md index 8c75e7f67..23ddaf61e 100644 --- a/content/notes/17-app-layer.md +++ b/content/notes/17-app-layer.md @@ -4,6 +4,9 @@ aliases: tags: - cosc203 - lecture +sr-due: 2022-10-20 +sr-interval: 3 +sr-ease: 250 --- # Client-server vs peer to peer @@ -132,7 +135,43 @@ three components ## DNS - ip adresses are hard to remember - need to map betwen host name and ip address -- +- hierarchical, domain-based naming scheme implemented using a distributed databse system +- core internet function, but implemented as an application layer protocol + +- tree structure ![](https://i.imgur.com/TtiMt9U.png) +- domain name space + - each node has a label : the root label is a null string + - each node has a domain name: a sequence of labels separated by dots, reading from the node up to the root. + - ![](https://i.imgur.com/TvHwuPK.png) +- name servers + - name space is divided into non-ovelapping zones + - each zone had name servers to hold information + - top level dns servers are responsible for domains such as .com .org .net and country domains + - authoritative DNS servers: maintained by organization or service providers + - ![](https://i.imgur.com/AU5F2Mv.png) + +DNS caching +- once (any) name server learns mapping, it caches mapping, and immediately returns a cached mapping in response to a query + - caching improves response time + - cache entries timeout (disappear) after some time (TTL) + - top-level domain names typically cached in local name servers +- cached entries may be out-of-date + - if named host changes IP address, may not be known Internet-wide until all TTLs expire! + - best-effort name-to-address translation! + +DNS name resolution: recursive query +- e.g., host at cs.otago.ac.nz wants IP address for ai.cs.waikato.ac.nz +- ![](https://i.imgur.com/1jW21AI.png) # Socket programming +- socket + - software component that has + - local/remote socket address: IP + port no. + - transport layer protocol: TCP or UDP +- socket api + - application programming interface usually provided by the operating system + - ![](https://i.imgur.com/ORLYEVH.png) + +![TCP socket](https://i.imgur.com/JIOQOGM.png) +![UDP socket](https://i.imgur.com/SATuwYL.png) diff --git a/content/notes/18-transport-layer.md b/content/notes/18-transport-layer.md new file mode 100644 index 000000000..f7933ac4d --- /dev/null +++ b/content/notes/18-transport-layer.md @@ -0,0 +1,9 @@ +--- +title: "18-transport-layer" +aliases: +tags: +- cosc203 +- lecture +--- + +# \ No newline at end of file diff --git a/content/notes/cosc-203.md b/content/notes/cosc-203.md index 0537fb664..7a521acb9 100644 --- a/content/notes/cosc-203.md +++ b/content/notes/cosc-203.md @@ -46,7 +46,7 @@ tags: - [15-basic sql] - [16-networks](notes/16-networks) - [17-application layer](notes/17-app-layer) -- [18-transport layer] +- [18-transport layer](notes/18-transport-layer) - [19-network layer data plane] - [20-network layer control plane] - [21-data link layer and LAN]