Autosave: 2024-09-06 10:00:02
This commit is contained in:
parent
e224ac50e6
commit
e2a024719f
4 changed files with 69 additions and 8 deletions
BIN
.zk/notebook.db
BIN
.zk/notebook.db
Binary file not shown.
|
@ -1,7 +1,23 @@
|
|||
---
|
||||
title: Application_Layer_of_Internet_Protocol
|
||||
tags: []
|
||||
tags: [internet, networks]
|
||||
created: Friday, September 06, 2024
|
||||
---
|
||||
|
||||
# Application Layer of the Internet Protocol
|
||||
|
||||
The final, topmost layer of the Internet Protocol suite.
|
||||
|
||||

|
||||
|
||||
The Application Layer is where we get to the protocols that describe the
|
||||
behaviour of applications. All the preceding lower levels are effectively
|
||||
**plumbing that enables applications to do the things they want accross the
|
||||
internet**.
|
||||
|
||||
Whereas the lower levels facilitate communication accross the internet, the
|
||||
Application Layer is concerned with achieving a specific task once the ability
|
||||
to communicate is assured.
|
||||
|
||||
Application Layer protocols include HTTP, the Simple Mail Transfer Protocol
|
||||
(SMTP), and FTP.
|
||||
|
|
43
zk/Example_scenario_internet_data_transfer.md
Normal file
43
zk/Example_scenario_internet_data_transfer.md
Normal file
|
@ -0,0 +1,43 @@
|
|||
---
|
||||
title: Example_scenario_internet_data_transfer
|
||||
tags: [networks, internet]
|
||||
created: Friday, September 06, 2024
|
||||
---
|
||||
|
||||
# Example scenario of data transfer accross the internet
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
- A client device is connected to a wireless WiFi network.
|
||||
- This network is connected to the internet via a router.
|
||||
- Elsewhere on the internet is a server also connected to the internet via
|
||||
router.
|
||||
- A user of the client device opens a web browser and requests a web page hosted
|
||||
on the server (we will assume it already knows the IP address)
|
||||
- The web browser knows HTTP - a protocol of the
|
||||
[Application Layer](Application_Layer_of_Internet_Protocol.md) - and forms an
|
||||
HTTP request intended for the destination server.
|
||||
- The browser hands off the HTTP request to the TCP/IP software stack of the
|
||||
device's [operating system](Basic_model_of_the_operating_system.md), asking
|
||||
that the data be delivered to the server on its IP address and at port 80.
|
||||
- The TCP/IP software stack on the client OS encapsulates the HTTP payload in a
|
||||
TCP segment (at the
|
||||
[Transport Layer](Transport_Layer_of_Internet_Protocol.md)), setting the
|
||||
destination port to 80 in the segment header.
|
||||
- The [Internet Layer](Internet_Layer_of_Internet_Protocol.md) software on the
|
||||
client then wraps the TCP segment in an IP packet, which includes the
|
||||
destination IP address of the server in the packet header.
|
||||
- At the [Link Layer](Link_Layer_of_Internet_Protocol.md) of the client device,
|
||||
the IP packet is encapsulated in a frame with the
|
||||
[MAC_address](MAC_addresses.md) of the local router in its header. The frame
|
||||
is wirelessly transmitted by the client device's WiFi hardware.
|
||||
- The wireless access point receives the frame and passes to the router. The
|
||||
router examines the internet layer packet to determine the destination IP
|
||||
address.
|
||||
- To reach the server, the request needs to travel through multiple routers on
|
||||
the internet and the process is replicated (looking up MAC address of the
|
||||
device and determining IP target). Eventually, the request reaches the router
|
||||
on the network where the server is connected.
|
||||
- The last router
|
|
@ -37,12 +37,14 @@ protocols. From the top:
|
|||
communication accross networks. It is responsible for identifying hosts on the
|
||||
inter-network by their addresses and routing data from network to network.
|
||||
|
||||
- The **Transport Layer** come back to this
|
||||
- The [Transport Layer](Transport_Layer_of_Internet_Protocol.md) creates a
|
||||
commmunication channel between two hosts using ports and sockets.
|
||||
|
||||
- The **Application Layer** is concerned with software that utilises information
|
||||
received and sent over the internet, for instance web pages and emails. This
|
||||
is the highest level of abstraction for which all the lower levels serve as
|
||||
"plumbing". Examples of protocols operative at the Application Layer include
|
||||
HTTP and SSH.
|
||||
- The [Application Layer](Application_Layer_of_Internet_Protocol.md) concerned
|
||||
with software that utilises information received and sent over the internet,
|
||||
for instance web pages and emails. This is the highest level of abstraction
|
||||
for which all the lower levels serve as "plumbing". Examples of protocols
|
||||
operative at the Application Layer include HTTP and SSH.
|
||||
|
||||

|
||||
See:
|
||||
[Example_scenario_internet_data_transfer](Example_scenario_internet_data_transfer.md)
|
||||
|
|
Loading…
Add table
Reference in a new issue