SlideShare a Scribd company logo
Fundamental Concepts



   OWASP Hyderabad
    Oct 10th, 2009

  Marc-André Laverdière
Agenda
●   Network Basics
●   IP, TCP, UDP, DNS
●   Internet Architecture
●   Static Web architecture
●   HTTP features
●   REST-based architecture


    (P.S. All images courtesy of Wikipedia)
Network Basics
●   OSI 7 Layer Model
Network Topologies
         ●   Point to point: using
             a switch or
             dedicated wiring
         ●   Bus: common wire,
             like in cable internet
         ●   Star: central hub
         ●   Ring: token ring
         ●   Mesh: redudancies
         ●   Tree: hierarchical
Network Terms
●   Client: computer that requests a service
●   Server: computer that fulfills the request
●   Gateway: point of contact to another network
●   Proxy: intermediary for making requests to servers.
    Often caches resources
●   Router: forwards information
●   Hub: connects many network segments
●   Switch: more efficient hub
●   Link: connection between two points
IP
 ●   IP: Internet Protocol
 ●   Used to send
     packets between
     point A and point B
 ●   No delivery
     guarantee
 ●   Two current
     versions: IPv4 and
     IPv6
IPv4 vs IPv6
●   IPv6 adds many features to IPv4:
       –   Greater address space
       –   Supports autoconfiguration
       –   Multicast
       –   Mandatory IPSec (encryption, authentication,
            tunelling)
       –   Removed rare fields, redundant checksum
       –   Larger max packet size (4GB)
       –   Support for mobile devices
NAT
●   Network Address Translation, used with IP
    masquerading
●   Used to make one IP address as front-end
    for many. E.g. Wireless hub+router
●   Gateway rewrites the packets so that they
    look like they all originate from the gateway
●   Breaks some applications, like SIP and some
    peer-to-peer clients
TCP
●   Transmission Control Protocol
●   Allows reliable transmissions
●   Error detection
●   Flow/congestion control
●   Add concept of port
●   Connection-based
UDP
●   User Datagram Protocol
●   Ports
●   Fast
●   No integrity checking/resending
DNS
●   Domain
    Name
    System
●   UDP main
●   Some TCP
●   13 root
    clusters
Internet Architecture
●   Interconnected computer networks
●   TCP/IP
●   DNS
●   Lots of hardware
●   Supports many things
       –   WWW
       –   Email
       –   Usenet
       –   IRC
Networking Concepts
Static Web Architecture
●   Www: portion of the Internet for retrieval of
    hyperdocuments
●   Multiple clients, multiple servers
●   All resources are static
●   Documents can include or refer to other
    resources
●   Resources are organized under websites
●   DNS, HTTP, HTML
HTTP
●   HyperText Transfer       ●   Verbs:
    Protocol                     –   HEAD: get metadata
●   Text-based                   –   GET: get a resource
                                     POST: submit data to a
●   Binary content must be       –
                                     resource
    encoded (often
                                 –   PUT: upload a resource
    Base64)
                                 –   DELETE
●   One connection per           –   TRACE: echo back the
    request (HTTP 1.0) or            request
    one connection for           –   OPTIONS: list supported
    many (HTTP 1.1)                  methods
●   Stateless                    –   CONNECT: create a tunnel
HTTP Request
●   User-Agent Opera/9.64 (X11; Linux i686; U; en)
    Presto/2.1.1
●   Host   www.wired.com
●   Accept   text/html, application/xml;q=0.9,
    application/xhtml+xml, image/png, image/jpeg,
    image/gif, image/x-xbitmap, */*;q=0.1
●   Accept-Language    en-IN,en;q=0.9
●   Accept-Charset iso-8859-1, utf-8, utf-16, *;q=0.1
●   Accept-Encoding    deflate, gzip, x-gzip, identity,
    *;q=0
●   Cookie    [cut]
●   Cookie2   $Version=1
●   Proxy-Connection   Keep-Alive
HTTP Response Header
●   HTTP/1.1 200 OK
●    Date: Mon, 23 May 2005 22:38:34 GMT
●    Server: Apache/1.3.3.7 (Unix)   (Red-Hat/Linux)
●    Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
●    Etag: "3f80f-1b6-3e1cb03b"
●    Accept-Ranges: bytes
●    Content-Length: 438
●    Connection: close
●    Content-Type: text/html; charset=UTF-8
Cookies
●   Cookies are values determined by the server
    that are stored by the client
●   The client automatically sends the cookie
    value on every request to the server
REST-Based Architecture
●   Problem: what I described is static. We need
    to execute code to have Web Applications
●   Principles:
        –   Everything goes through the resources.
             Resources are different than the
             representation given to the clients
        –   Resources can be manipulated through the
             representation
        –   Each message is self-descriptive
        –   Hypermedia contains the application state
Essentially
●   Applications react to queries from the clients
    only. Nothing happens without a query.
●   Resource access is free to trigger any
    processing

More Related Content

PDF
Redis vs Infinispan | DevNation Tech Talk
ODP
Scale out backups-with_bareos_and_gluster
ODP
Developing apps and_integrating_with_gluster_fs_-_libgfapi
ODP
20160130 Gluster-roadmap
PDF
Gluster fs current_features_and_roadmap
ODP
Gluster intro-tdose
ODP
Lcna tutorial-2012
PDF
Smb gluster devmar2013
Redis vs Infinispan | DevNation Tech Talk
Scale out backups-with_bareos_and_gluster
Developing apps and_integrating_with_gluster_fs_-_libgfapi
20160130 Gluster-roadmap
Gluster fs current_features_and_roadmap
Gluster intro-tdose
Lcna tutorial-2012
Smb gluster devmar2013

What's hot (20)

ODP
The Internet of Things ... Babel
ODP
Sdc challenges-2012
PDF
Qemu gluster fs
ODP
Lisa 2015-gluster fs-introduction
ODP
20160401 Gluster-roadmap
PDF
Gluster d2
PDF
Disperse xlator ramon_datalab
ODP
Leases and-caching final
PDF
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
PDF
Debugging with-wireshark-niels-de-vos
ODP
Lcna example-2012
PDF
Nsq & python worker
PDF
Sdc 2012-challenges
ODP
HornetQ Presentation On JBoss World 2009
PDF
20160401 guster-roadmap
ODP
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
PDF
Webserver
PPTX
Modern Distributed Messaging and RPC
ODP
Introduction to highly_availablenfs_server_on_scale-out_storage_systems_based...
ODP
GlusterD 2.0 - Managing Distributed File System Using a Centralized Store
The Internet of Things ... Babel
Sdc challenges-2012
Qemu gluster fs
Lisa 2015-gluster fs-introduction
20160401 Gluster-roadmap
Gluster d2
Disperse xlator ramon_datalab
Leases and-caching final
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
Debugging with-wireshark-niels-de-vos
Lcna example-2012
Nsq & python worker
Sdc 2012-challenges
HornetQ Presentation On JBoss World 2009
20160401 guster-roadmap
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
Webserver
Modern Distributed Messaging and RPC
Introduction to highly_availablenfs_server_on_scale-out_storage_systems_based...
GlusterD 2.0 - Managing Distributed File System Using a Centralized Store
Ad

Viewers also liked (9)

PPT
Physical Layer
DOC
Subneting and vlsm ntpg (1)
DOCX
Network technology Paper 2
DOCX
Network technology paper
PPT
OSI Physical Layer
PPT
OSI Network Layer
DOC
Subneting and vlsm ntpg
PPT
ion exchange chromatography
PPTX
UV visible spectroscopy
Physical Layer
Subneting and vlsm ntpg (1)
Network technology Paper 2
Network technology paper
OSI Physical Layer
OSI Network Layer
Subneting and vlsm ntpg
ion exchange chromatography
UV visible spectroscopy
Ad

Similar to Networking Concepts (20)

PDF
Cleaning Up the Dirt of the Nineties - How New Protocols are Modernizing the Web
PDF
gRPC Design and Implementation
PPTX
Web technologies: recap on TCP-IP
PDF
HTTP2 in action - Piet Van Dongen - Codemotion Amsterdam 2017
PDF
Computer network (10)
PDF
Networks Have Layers - Understanding The OSI Model
PDF
RPC in Smalltalk
PDF
Linux Servers
PDF
Design Web Service API by HungerStation
PDF
Apache HTTPd Server 2.2 Presentation
PDF
Building high performance microservices in finance with Apache Thrift
PPTX
.NET Conf 2022 - Networking in .NET 7
PDF
HTTP/2: What's new?
ODP
There and back again
PDF
Linux Hosting Training Course Level 1-2
PDF
LEC_10_Week_10_Server_Configuration_in_Linux.pdf
PDF
From Device to Data Center to Insights
PPTX
Network tunneling techniques
PDF
Linux advanced concepts - Part 2
PDF
CN 6131(15) Module IV.pdf
Cleaning Up the Dirt of the Nineties - How New Protocols are Modernizing the Web
gRPC Design and Implementation
Web technologies: recap on TCP-IP
HTTP2 in action - Piet Van Dongen - Codemotion Amsterdam 2017
Computer network (10)
Networks Have Layers - Understanding The OSI Model
RPC in Smalltalk
Linux Servers
Design Web Service API by HungerStation
Apache HTTPd Server 2.2 Presentation
Building high performance microservices in finance with Apache Thrift
.NET Conf 2022 - Networking in .NET 7
HTTP/2: What's new?
There and back again
Linux Hosting Training Course Level 1-2
LEC_10_Week_10_Server_Configuration_in_Linux.pdf
From Device to Data Center to Insights
Network tunneling techniques
Linux advanced concepts - Part 2
CN 6131(15) Module IV.pdf

More from n|u - The Open Security Community (20)

PDF
Hardware security testing 101 (Null - Delhi Chapter)
PPTX
SSRF exploit the trust relationship
PDF
PDF
Api security-testing
PDF
Introduction to TLS 1.3
PDF
Gibson 101 -quick_introduction_to_hacking_mainframes_in_2020_null_infosec_gir...
PDF
Talking About SSRF,CRLF
PPTX
Building active directory lab for red teaming
PPTX
Owning a company through their logs
PPTX
Introduction to shodan
PDF
Detecting persistence in windows
PPTX
Frida - Objection Tool Usage
PDF
OSQuery - Monitoring System Process
PDF
DevSecOps Jenkins Pipeline -Security
PDF
Extensible markup language attacks
PPTX
PDF
Hardware security testing 101 (Null - Delhi Chapter)
SSRF exploit the trust relationship
Api security-testing
Introduction to TLS 1.3
Gibson 101 -quick_introduction_to_hacking_mainframes_in_2020_null_infosec_gir...
Talking About SSRF,CRLF
Building active directory lab for red teaming
Owning a company through their logs
Introduction to shodan
Detecting persistence in windows
Frida - Objection Tool Usage
OSQuery - Monitoring System Process
DevSecOps Jenkins Pipeline -Security
Extensible markup language attacks

Recently uploaded (20)

PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
Spectroscopy.pptx food analysis technology
PDF
Approach and Philosophy of On baking technology
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Machine learning based COVID-19 study performance prediction
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPT
Teaching material agriculture food technology
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Unlocking AI with Model Context Protocol (MCP)
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The AUB Centre for AI in Media Proposal.docx
Review of recent advances in non-invasive hemoglobin estimation
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Spectroscopy.pptx food analysis technology
Approach and Philosophy of On baking technology
Advanced methodologies resolving dimensionality complications for autism neur...
Machine learning based COVID-19 study performance prediction
NewMind AI Weekly Chronicles - August'25 Week I
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Teaching material agriculture food technology
Programs and apps: productivity, graphics, security and other tools
Understanding_Digital_Forensics_Presentation.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Unlocking AI with Model Context Protocol (MCP)
“AI and Expert System Decision Support & Business Intelligence Systems”
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Per capita expenditure prediction using model stacking based on satellite ima...

Networking Concepts

  • 1. Fundamental Concepts OWASP Hyderabad Oct 10th, 2009 Marc-André Laverdière
  • 2. Agenda ● Network Basics ● IP, TCP, UDP, DNS ● Internet Architecture ● Static Web architecture ● HTTP features ● REST-based architecture (P.S. All images courtesy of Wikipedia)
  • 3. Network Basics ● OSI 7 Layer Model
  • 4. Network Topologies ● Point to point: using a switch or dedicated wiring ● Bus: common wire, like in cable internet ● Star: central hub ● Ring: token ring ● Mesh: redudancies ● Tree: hierarchical
  • 5. Network Terms ● Client: computer that requests a service ● Server: computer that fulfills the request ● Gateway: point of contact to another network ● Proxy: intermediary for making requests to servers. Often caches resources ● Router: forwards information ● Hub: connects many network segments ● Switch: more efficient hub ● Link: connection between two points
  • 6. IP ● IP: Internet Protocol ● Used to send packets between point A and point B ● No delivery guarantee ● Two current versions: IPv4 and IPv6
  • 7. IPv4 vs IPv6 ● IPv6 adds many features to IPv4: – Greater address space – Supports autoconfiguration – Multicast – Mandatory IPSec (encryption, authentication, tunelling) – Removed rare fields, redundant checksum – Larger max packet size (4GB) – Support for mobile devices
  • 8. NAT ● Network Address Translation, used with IP masquerading ● Used to make one IP address as front-end for many. E.g. Wireless hub+router ● Gateway rewrites the packets so that they look like they all originate from the gateway ● Breaks some applications, like SIP and some peer-to-peer clients
  • 9. TCP ● Transmission Control Protocol ● Allows reliable transmissions ● Error detection ● Flow/congestion control ● Add concept of port ● Connection-based
  • 10. UDP ● User Datagram Protocol ● Ports ● Fast ● No integrity checking/resending
  • 11. DNS ● Domain Name System ● UDP main ● Some TCP ● 13 root clusters
  • 12. Internet Architecture ● Interconnected computer networks ● TCP/IP ● DNS ● Lots of hardware ● Supports many things – WWW – Email – Usenet – IRC
  • 14. Static Web Architecture ● Www: portion of the Internet for retrieval of hyperdocuments ● Multiple clients, multiple servers ● All resources are static ● Documents can include or refer to other resources ● Resources are organized under websites ● DNS, HTTP, HTML
  • 15. HTTP ● HyperText Transfer ● Verbs: Protocol – HEAD: get metadata ● Text-based – GET: get a resource POST: submit data to a ● Binary content must be – resource encoded (often – PUT: upload a resource Base64) – DELETE ● One connection per – TRACE: echo back the request (HTTP 1.0) or request one connection for – OPTIONS: list supported many (HTTP 1.1) methods ● Stateless – CONNECT: create a tunnel
  • 16. HTTP Request ● User-Agent Opera/9.64 (X11; Linux i686; U; en) Presto/2.1.1 ● Host www.wired.com ● Accept text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1 ● Accept-Language en-IN,en;q=0.9 ● Accept-Charset iso-8859-1, utf-8, utf-16, *;q=0.1 ● Accept-Encoding deflate, gzip, x-gzip, identity, *;q=0 ● Cookie [cut] ● Cookie2 $Version=1 ● Proxy-Connection Keep-Alive
  • 17. HTTP Response Header ● HTTP/1.1 200 OK ● Date: Mon, 23 May 2005 22:38:34 GMT ● Server: Apache/1.3.3.7 (Unix) (Red-Hat/Linux) ● Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT ● Etag: "3f80f-1b6-3e1cb03b" ● Accept-Ranges: bytes ● Content-Length: 438 ● Connection: close ● Content-Type: text/html; charset=UTF-8
  • 18. Cookies ● Cookies are values determined by the server that are stored by the client ● The client automatically sends the cookie value on every request to the server
  • 19. REST-Based Architecture ● Problem: what I described is static. We need to execute code to have Web Applications ● Principles: – Everything goes through the resources. Resources are different than the representation given to the clients – Resources can be manipulated through the representation – Each message is self-descriptive – Hypermedia contains the application state
  • 20. Essentially ● Applications react to queries from the clients only. Nothing happens without a query. ● Resource access is free to trigger any processing