KS4 Networks - STEM€¦ · •Describe the four-layer Internet Protocol Suite •Identify specific...
Transcript of KS4 Networks - STEM€¦ · •Describe the four-layer Internet Protocol Suite •Identify specific...
KS4 NetworksThe Internet Protocol Suite
Who are we?
•David Zendle• University of York,
Computer Science Department• Associate Lecturer
• Computing at School Regional Centre (CRC) for Yorkshire and the Humber• Regional Co-Ordinator
Who are we?
•Paul Willcox• University of York,
Computer Science Department• Associate Lecturer
• Computing at School Regional Centre (CRC) for Yorkshire and the Humber• Regional Co-Ordinator
CAS regional centre
(CRC)
The CAS Regional Centre
• Where’s the CRC?• Computer Science
department, University of York
• What’s the CRC for?• CAS is dedicated to
providing support for teaching computing
• The CRC for Yorkshire and the Humber is dedicated to specifically supporting you (teachers in the region).
The CAS Regional Centre
• How can the CRC support you in teaching computing?
• We…1. Support and organise local
CAS Hubs2. Run larger CAS Regional
Meetings3. Support and organise local
Master Teachers4. Act as a POC for teachers5. Arrange and deliver a
variety of CPD
#1: We Support and organise local CAS
Hubs•A CAS Hub is a group of teachers who meet up once or twice a term to:• Network• Discuss computing• Share best practice• Receive computing CPD
• The CRC supports Hubs• Setting up hubs• Running hubs• Publicising hubs
#1: We Support and organise local CAS
Hubs• Interested in attending a
hub?• There are some running in
York next week!• Ask us!• casyork@computingatschoo
l.org.uk
• Interested in starting your own hub?• Ask us!• casyork@computingatschoo
l.org.uk
Hubs are not the
only events we
organise…
#2: We Run larger CAS Regional Meetings
• We support CAS Hubs• Local
• We also organise termly Regional Meetings, which are a lot like Hubs• Teachers meeting up• Networking• Sharing best practice• CPD• But on a regional level across
Yorkshire and the Humber, not a local one.
• Interested?• Ask us!• [email protected]
#3: We support Master Teachers
• Master Teachers are experienced and high-performing teachers of computing
• MTs provide CPD and mentoring support to teachers in their local area
• The CRC• Helps excellent teachers become MTs• Connects MTs with teachers in their
local area who need support or mentoring
• Interested• In becoming a MT?• In being put in touch with a MT?• Ask us!• [email protected]
#4: We act as a point of contact for
teachers
•Teaching computing can be:• Scary
• Confusing
•Need help?
•Need support?
•Ask us!• [email protected]
#5: We organise CPD
• Want someone to:• Come into your school / cluster
and deliver some computing training?
• Upskill you in some particular aspect of the curriculum?
• Organise some CPD which you want to run?
• Ask us!• [email protected]
• That’s what I’m here today to do!
• Today I’ll be delivering a bit of CPD on networks
Order of presentation
• 40 minute lecture• “The Internet Protocol Suite”• Subject knowledge• Led by David
• 10 minute workshop• Turning that knowledge into a lesson• Led by Paul
• 10 minute feedback• Share ideas
Okay, let’s get
started!
What are communication protocols?
• I’m here to talk about protocols• But what are protocols?
• Like most technical terms, the concept underlying the word is quite simple
•Protocols are sharedsets of rules.
What are communication protocols?
• In the case of networks, these sets of rules govern:• How data is transmitted across a network
• What is done with that data by the various devices on a network
Today I’m going to talk about
• A whole bunch of protocols:• TCP• IP• FTP• HTTP• ARP
• How they fit together to define communication over the internet• Internet Protocol Suite• TCP/IP Model
OF INTERNET
PROTOCOLS
But David, why
would I care about
that?
A couple of reasons for caring about this
1. It’s pretty cool• We use the internet all the time
• It’s fun to find out how it actually works
2. It’s assessed explicitly in the new September 2016 specs
• For Edexcel
• For AQA
• For OCR
Edexcel, OCR, AQA
If you find that
exciting, you’ll be
thrilled to learn
that…
Quick event plug
OCR will present on their
new CS GCSE spec and how
to meet it at the NSTEMC
on Monday @ 4.30Sign up here:
https://goo.gl/OK3TcM
Objectives
• So, under new GCSE specs, you need to know about some specific content• To be precise• The layered protocol model
on which the internet runs
• This can be problematic• Why?• This content can be pretty
confusing
Case and point?
By the end of today,
you should understand
why this is unhelpful
Objectives
•By the end of the session, you will be able to:• Describe the four-layer Internet Protocol Suite
• Identify specific protocols from within this suite
• Explain the functionality provided by these protocols
• Teach this content with confidence
layered protocols
Let’s start off with
a game!
Here’s a game for us to play!
• Here’s a particular network topology
• Each node is connected to nodes on the left and right
• You’re all sitting in a row• I hope• So let’s pretend you’re a network
with this particular topology• Let’s also pretend this piece of
paper is some data to pass across your network
• And let’s assign each of you a location on this network
Rules of the game
•Object of the game:• Get a piece of data from
source to destination
• Have that piece of data read out at the destination
•What kind of rules will we need to play this game?
Main kinds of rules
•Rules governing where to pass the data
•Rules governing what to do with the data
Rules of the game
•What to do with the data when you receive it:• Open up the piece of paper
• Read what’s inside it
• Check the destination number on the outside. If you’re the destination, read the words aloud
•Where to pass the data next:• If the destination is on your left, pass left
• Else If the destination is on your right, pass right
How could we make
that process
faster?
Not all protocols should be used all the
time•Most of you didn’t need to open the data and process what was inside it•Your job was just to pass it on•You should never have needed to use that protocol at all!• Using it was inefficient
Not all protocols should be used all the
time
•Similarly, some devices on networks only need to pass data around
•They’re don’t need to actually interpret that data• They just need to know where it’s going next
•So these devices should only use some protocols• Otherwise, waste occurs
There’s a good analogy to postmen here
Not all protocols should be used all the
time
•This is where layered protocol models come in• These approaches
(unsurprisingly) work by separating protocols out into different layers.
• Devices only use protocols from necessary layers
Okay, let’s do the
same exercise, but
this time let’s layer
our protocols…
Rules of the game from before
•What to do with the data when you receive it:• Open up the piece of paper
• Read what’s inside it
• If you’re the destination, read the words aloud
•Where to pass the data next:• If the destination is on your left, pass left
• Else If the destination is on your right, pass right
• Else If you’re the destination, don’t pass
Rules of the game
Layer 1. Work out where the data should go• Check the outside of the message
• Are you the destination?
• If not, you don’t need to care about what the data is. Pass the data towards the destination.• Do not go on to Layer 2.
Layer 2. Interpret the data• If you are the destination, (and only if you’re the
destination) open up the paper and read what’s inside!
A lot more
efficient, huh?
A very simple layered protocol model
•We’ve essentially defined a very simple layered protocol model:• Layer 1: ‘Passing Paper Layer’: All people need to care
about this layer, to determine where to pass next
• Layer 2: ‘Reading Paper Layer’: Most people don’t need to care about this layer!
• The key point to put across about layered protocol models is that they work because nodes in a network often don’t need to use all the layers
The internet protocol suite
•The model which is mentioned in GCSE specifications is the Internet Protocol Suite• This is often
confusingly called the TCP/IP model, but it really shouldn’t be (in my opinion).
The internet protocol suite
•The simple layered protocol model we defined earlier governed our communications in the room
•The Internet Protocol Suite governs communications across the internet
The internet protocol suite
• This model consists of four layers of protocols:• Application Layer• Transport Layer• Internet Layer• Link Layer
•Word to the wise• These are sometimes
called by other names! (See image)
Just like in our
example earlier, each
of these layers
handles different
functionality
The internet protocol suite: Summary
I’ll briefly summarise each of the layers:
• Application Layer• defines protocols for how applications talk to each other
• Transport Layer• Defines protocols for segmenting data from a sending host and
reassembling that data on a receiving host (‘host to host’); error control; flow control.
• Internet Layer• Defines protocols for packaging data and routing it across a network
• Link Layer• Defines protocols for handling low-level communication between
individual devices
The internet protocol suite
•This model consists of four layers of protocols:
1. Application Layer2. Transport Layer3. Internet Layer4. Link Layer
Application Layer
Applications and the application layer
•What do application-layer protocols do?
•The clue’s in the name!
•We’ve all used applications at one time or another• I hope!
•Lots of these applications communicate with other applications via networks:
Applications and the application layer
•Web browsers• Talk to web servers• “Hey! Give me some
data!”• “Hey! Upload this data
for me!”
•When an application receives a message from another application • It needs to know how to respond to that message
What should I do with this?
•Does this message mean that they want some data from me?
•Does this message mean that they want me to do something with their data?
•How do I handle this message?
Applications and the application layer
•Application-layer protocols help with this problem. They:• Interpret data so that the application can use it
• Prepare data so that it can be understood by an application using the same protocol ‘at the other end’
Example?
•HTTP
•Hypertext Transfer Protocol
•Defines common rules for how to:• Request resources from a server
• Interpret requests for resources
• Request that a server do something with a resource
• Interpret requests that something should be done with an incoming resource
Here’s a quick
outline
Say my web server
receives a request
What does http do?
•HTTP provides a common set of rules for applications to talk to each other
• Aha! The ‘get’ command tells me that they want that specific resource… I’d better go get that for them!
Acting out HTTP
•Here’s a scenario:
•There are two applications in different locations on a network• These applications can make requests for resources
• These applications can receive requests for resources
I would like to
GET that
yellow sphere
resource
GET Yellow Sphere!
Aha! A GET
request for the
Yellow Sphere
resource!
That’s pretty
simple!
But wait… doesn’t
it skip out a few
steps?
A few steps are missing
• Remember that message which used the HTTP protocol?
• It doesn’t mention IP addresses anywhere
• But IP addresses define where things are on the internet
• How can these applications talk to each other without knowing who they’re talking to?
Layers are specialised
•Application layer protocols• Just define rules for applications to talk to each other
• Don’t handle other things!
• Leave those to the other layers…
The transport layer
The internet protocol suite
•This model consists of four layers of protocols:
1. Application Layer2. Transport Layer3. Internet Layer4. Link Layer
The internet protocol suite: Summary
•Application Layer• defines protocols for how applications talk to each
other
•Transport Layer• Defines protocols for segmenting data from a sending
host and reassembling that data on a receiving host (‘host to host’)• error control
• flow control
Example? TCP
•TCP is a Transport-layer protocol• Transmission Control Protocol
•What does it do? Amongst other things:• Provides a protocol for splitting one big piece of data
into several smaller packets for easy travel• Provides a protocol for reassembling packets into a
message• Provides a way of checking that all packets have
been received
Acting out TCP
•Can I have a volunteer from the audience please!• Step up!
• Don’t be shy!
•You are going to act out the role of a machine which has just requested some data using TCP
Acting out TCP
• I’m going to send you some packets of data, labelled 1-6
•Here are the rules which our transport-layer protocol gives us:• If you receive a packet out of order, you can reorder
the packet
• If you think you’re missing a packet overall you can request that packet
So… that’s the transport
layer! Shared rules for
making sure data gets
transported between hosts
The Internet Layer
The internet protocol suite
•This model consists of four layers of protocols:
1. Application Layer2. Transport Layer3. Internet Layer4. Link Layer
Defines protocols for
packaging data and
routing it across a
network
Hmmm… that sounds
a lot like the
transport layer!
Transport layer vs. internet layer
•Transport Layer handles things like:• Splitting data into packets at one end
• Reassembling those packets at the other end
• Making sure host machines have all the right packets
•The Internet layer handles things like:• Putting addresses on those packets that say where
they’re going to and coming from
• Determining how those packets get across a network
We’re on more solid
ground here, I think
Example? IP
• IP• Internet Protocol
•What does it do? •Defines rules for:
• Attaching a header to some data which says where the data should go
• Reading a header and using that information to send data somewhere else
The Link Layer
Defines protocols for
handling low-level
communication
between individual
devices
Example? ARP
• ARP is a protocol in the Link layer• Address Resolution Protocol
• When is it used?• When we have some data with an IP address and we want to
know where physically to send that data.
• What does it do? • Defines rules for:
• Asking local devices what the physical address (MAC address) of an IP address is
• Replying to requests asking for MAC addresses for IP addresses
Still confused?
Here’s a little demo
MAC: AA
IP: 2
MAC: BB
IP: 3
Computers making ARP requests
• Oh! I have a piece of data for IP address 3.
• But I don’t know where that physically is in the network.
• Hello! Everyone in the network! Are any of you mapped to IP address 3?
• Sure thing!
• Hi! Yeah, that’s me!
• My MAC Address is BB
• Can you send that data over?
Still confused?
•An IP address is like a street address• E.g. 20 Lowther Drive
• It tells you where something is
•So, where in the world is 20 Lowther Drive?
•Can you cycle from here to 20 Lowther Drive?• You can’t tell me
• Even though that address identifies a specific place
• You can’t tell from that address where in the physical world that place is
IP-MAC == Street Address-GPS
• ARP defines rules for turning an IP into a MAC Address
• This is like mapping Street Address to GPS co-ordinates• It’s defining where that thing
physically is
• This is the kind of thing the Link Layer handles• Low-level rules for defining
ways for physical things to talk to each other
Putting it all together
The internet protocol suite
•This model consists of four layers of protocols:
1. Application Layer2. Transport Layer3. Internet Layer4. Link Layer
Remember how we
modelled simple
protocols in a human
line network?
Here’s a game for us to play!
• Here’s a particular network topology
• Each node is connected to nodes on the left and right
• You’re all sitting in a row• I hope• So let’s pretend you’re a network
with this particular topology• Let’s also pretend this piece of
paper is some data to pass across your network
• And let’s assign each of you a location on this network
How might we model
the internet protocol
suite in a human line
network?
Let’s model these layers in our line
network again: application layer
Application Layer
•Rules for applications to talk to each other
•You could show how the application layer tells applications ultimately what to do with data• Sources: Fold your data up neatly
• Destinations: Unfold the data and read aloud
Let’s model these layers in our line
network again: transport layer
Transport Layer
•Rules for host to host communication e.g. segmentation
•You could show how the transport layer segments data into packets• Sources: Cut your data up and put it in numbered
envelopes• Destinations: Arrange the envelopes in the right order• Destinations: Open up the envelopes and sellotape the
data together
Let’s model these layers in our line
network again: Internet and link layer
Internet Layer
•Rules for transporting data across the network• Work out where to pass each envelope next
Link Layer
• Low-level rules for communication between individual pieces of hardware• Use your eyes to work out what direction to physically to
pass the envelope in order to get to the address specified at the layer above
Objectives
•By the end of the session, you will be able to:• Describe the four-layer Internet Protocol Suite
• Identify specific protocols from within this suite
• Explain the functionality provided by these protocols
• Be confident in teaching this content
Workshop
What now?
•Now what?
•Let’s have a chat
•How might you teach this content?
I know how I’d
teach this at
University
Roughly like this!
Workshop
•How have you taught similar content in the past?
•How would you teach this content without using computers?