CS 3830 Day 6 Introduction 1-1
Jan 03, 2016
Introduction 1-3
The bad guys can use false source addresses
IP spoofing: send packet with false source address
Used in conjunction with DoS attacks What if hacker not on the same subnet?
A
B
C
src:B dest:A payload
Introduction 1-4
The bad guys can record and playback
record-and-playback: sniff sensitive info (e.g., password), and use later (man-in-the-middle) password holder is that user from system
point of view
A
B
C
src:B dest:A user: B; password: foosrc:C dest:A user: B; password: foo
Introduction 1-5
Network Security more throughout this course chapter 8: focus on security cryptographic techniques: obvious uses
and not so obvious uses
Introduction 1-6
Chapter 1: roadmap
1.1 What is the Internet?1.2 Network edge
end systems, access networks, links
1.3 Network core circuit switching, packet switching, network structure
1.4 Delay, loss and throughput in packet-switched networks
1.5 Protocol layers, service models1.6 Networks under attack: security1.7 History
Introduction 1-7
Internet History
1961: Kleinrock – queueing theory shows effectiveness of packet-switching
1964: Baran - packet-switching in military nets
1967: ARPAnet conceived by Advanced Research Projects Agency
1969: first ARPAnet node operational
Who had the first computer on the net?
1972: ARPAnet public
demonstration NCP (Network Control
Program) first host-host protocol
first e-mail program ARPAnet has 15 nodes
1961-1972: Early packet-switching principles
Introduction 1-8
Internet History
1970: ALOHAnet satellite network in Hawaii
1974: Cerf and Kahn - architecture for interconnecting networks
1976: Ethernet at Xerox PARC
late70’s: proprietary architectures: DECnet, SNA, XNA
late 70’s: switching fixed length packets (ATM precursor)
1979: ARPAnet has 200 nodes
Cerf and Kahn’s internetworking principles: minimalism, autonomy -
no internal changes required to interconnect networks
best effort service model stateless routers decentralized control
define today’s Internet architecture
1972-1980: Internetworking, new and proprietary nets
Introduction 1-9
Internet History
1983: deployment of TCP/IP
1982: smtp e-mail protocol defined
1983: DNS defined for name-to-IP-address translation
1985: ftp protocol defined
1988: TCP congestion control
new national networks: Csnet, BITnet, NSFnet, Minitel
100,000 hosts connected to confederation of networks
1980-1990: new protocols, a proliferation of networks
Introduction 1-10
Internet History
Early 1990’s: ARPAnet decommissioned
1991: NSF lifts restrictions on commercial use of NSFnet (decommissioned, 1995)
early 1990s: Web HTML, HTTP: Berners-Lee 1994: Mosaic, later
Netscape late 1990’s:
commercialization of the Web
Late 1990’s – 2000’s: more killer apps: instant
messaging, P2P file sharing
network security to forefront
est. 50 million+ hosts backbone links running at
Gbps
1990, 2000’s: commercialization, the Web, new apps
Introduction 1-11
Internet History
2007: ~500 million hosts Voice, Video over IP P2P applications:
BitTorrent, Skype, etc. more applications:
YouTube, gaming wireless, mobility
Current: ? Do some
research and find some interesting statistics
Introduction 1-12
Introduction: SummaryCovered a “ton” of material! Internet overview what’s a protocol? network edge, core,
access network packet-switching
versus circuit-switching Internet structure
performance: loss, delay, throughput
layering, service models security history
You now have: context, overview,
“feel” of networking more depth, detail
to follow!
2: Application Layer 13
Chapter 2: Application layer
2.1 Principles of network applications
2.2 Web and HTTP 2.3 FTP 2.4 Electronic Mail
SMTP, POP3, IMAP
2.5 DNS
2.6 P2P applications 2.7 Socket
programming with TCP 2.8 Socket
programming with UDP
2: Application Layer 14
Chapter 2: Application LayerOur goals: conceptual,
implementation aspects of network application protocols: transport-layer
service models client-server
paradigm peer-to-peer
paradigm
learn about protocols by examining popular application-level protocols: HTTP FTP SMTP / POP3 / IMAP DNS
programming network applications socket API (Java)
2: Application Layer 15
Chapter 2: Application layer
2.1 Principles of network applications
2.2 Web and HTTP 2.3 FTP 2.4 Electronic Mail
SMTP, POP3, IMAP
2.5 DNS
2.6 P2P applications 2.7 Socket
programming with TCP 2.8 Socket
programming with UDP
2.9 Building a Web server
2: Application Layer 16
Application architectures
Client-server Peer-to-peer (P2P) Hybrid of client-server and P2P
2: Application Layer 17
Client-server architecture
server: always-on host permanent IP address server farms for
scalingclients:
communicate with server may be intermittently
connected may have dynamic IP
addresses do not communicate
directly with each other
client/server
2: Application Layer 18
Pure P2P architecture
no always-on server arbitrary end systems
directly communicate peers are
intermittently connected and change IP addresses
Highly scalable but difficult to manage
peer-peer
2: Application Layer 19
Hybrid of client-server and P2PSkype
voice-over-IP P2P application centralized server: finding address of
remote party: client-client connection: direct (not through
server) Instant messaging
chatting between two users is P2P centralized service: client presence
detection/location• user registers its IP address with central
server when it comes online• user contacts central server to find IP
addresses of buddies
2: Application Layer 20
Processes communicating
Process: program running within a host.
within same host, two processes communicate using inter-process communication (defined by OS).
processes in different hosts communicate by exchanging messages
Client process: process that initiates communication
Server process: process that waits to be contacted
Note: applications with P2P architectures have client processes & server processes