|
Protocols
- negotiated language for communication
- network protocols: definitions for communication between computers
- Ethernet
- Localtalk
- Token Ring
(Wouldn't the Internet be fun if it were Token Ring?)
- FDDI
- ATM
- SONET
- DSL
- ISDN
Layer models
- protocol stack, layering
- each layer only communicates with the layers directly above and
below
- facilitates implementation and system interconnection
- OSI 7 layer model
- Application (layer 7)
- Presentation
- Session
- Transport
- Network
- Data link
- Physical (layer 1)
- TCP/IP 4 layer model
- Application (layer 4)
- Transport
- Internet
- Network (layer 1)
- Gogan's
9 layer model
Same as the OSI 7-layer model, except for the addition of:
- Political (layer 9)
- Financial (layer 8)
Physical network topologies
Network divisions
- LAN, WAN, MAN -- scope
- intranet, extranet, DMZ -- audience
- Internet -- the world
- VLAN -- segmentation by software at the switch level
Packets
- data transmitted in small bits
- disassembly & reassembly
- intermingled streams
- source, destination, flags, data, checksum
Ethernet
- MAC address xx:xx:xx:xx:xx:xx
IP
- Internet protocol
- IP address x.x.x.x
- best effort delivery
UDP
- user datagram protocol
- best effort delivery
- used for applications with
- internal data reliability checks (NFS)
- real-time sensitivity (multimedia)
TCP
- transmission control protocol
- guaranteed delivery
- SYN, SYN/ACK, ACK
- sequence numbers for data reassembly
- slow start
- additive increase, exponential decrease
- most Internet applications use TCP (TCP/IP)
- higher level protocols: http, ftp, smtp, pop, imap, etc.
ICMP
- Internet control message protocol
- used for informational messages between hosts
- echo request/reply (ping)
- traceroute reply messages
DHCP, BOOTP
See /etc/protocols
Switching
- typically layer 2
- for ethernet, MAC addresses are used
- switch keeps MAC address tables to determine the destination switch
port for a packet
Routing
- layer 3 switching
- separate broadcast domains
- for communication between networks or subnetworks
- default gateway for a host
- neighbor routers share routing information
Routing protocols
- RIP (routing information protocol)
- for LANs
- hop count determines path
- OSPF (open shortest path first)
- for LANs
- uses designated routers and keeps link state information
- BGP (border gateway protocol)
- for WANs, Internet backbone ISPs use this protocol
- weighted paths, least cost
ARP & Broadcasts
- ARP (address resolution protocol) used to determine MAC address
- packets sent to all hosts on a network segment
- MAC address ff:ff:ff:ff:ff:ff
- IP address -- it depends
- subnet mask determines the network
- e.g. 152.2.200.200 + 255.255.0.0 => 152.2.255.255
- routers shouldn't retransmit broadcast packets
NAT
- network address translation
- typically uses 10.0.0.0, 192.168.0.0 network blocks
- a gateway translates between internal IP addresses and the outside
network
BSD sockets
- ports 0-65535, UDP & TCP
- permit multiple applications on the same system and multiple
streams between systems
- stream endpoints: src IP address & port, dst IP address & port
- ports are assigned to applications, see /etc/services
- typical ports
- 80 http
- 22 ssh
- 20/21 ftp
- 23 telnet
DNS
- domain name service
- associates human-readable text to numeric ip addresses
Security issues in networking
- unauthorized communication with a host
- valid credentials from an unauthorized source
- exploitation of a vulnerability to bypass checks
- denial of service
Remedies
- packet filtering
- host-based filters
- router ACLs
- preventing pings to broadcast addresses
- stateful firewalls
- encryption
- application level (ssh, SSL, pgp)
- network level (VPN, IPSec)
- good network design
- redundancy
- fault tolerance
|