You are on page 1of 21

LESSON 5

1. Introduction to networking
2. Types of Network
3. Client- Server model
4. ISO/OSI model introduction
5. Protocols and ports
6. HTTP protocol and its methods

7. Chrome DevTools
Introduction to networking
A network is a collection of computers connected to each other.
The network allows computers to communicate with each other
and share resources and information.

Network Classification:
● By scale
● By topology
● By architecture

2
Types of Networks: by Scale
Type Description

Personal Area Network A PAN is a computer network used for communication among computer devices
(PAN) (including telephones and personal digital assistants) close to one person.

Local Area Network A LAN is a computer network covering a small physical area like a home, office,
(LAN) or small group of buildings, such as a school, or an airport

Metropolitan Area A MAN is large computer network spanning metropolitan area, usually a city.
Network (MAN) They typically use wireless infrastructure or optical fiber connections to link their
sites. Its geographic scope falls between a WAN and LAN. MANs provide Internet
connectivity for LANs in a metropolitan region, and connect them to wider area
networks like the Internet

Wide Area Network A WAN is a computer network that covers a broad area (i.e., any network whose
(WAN) communications links cross metropolitan, regional, or national boundaries.
The largest and most well-known example of a WAN is the Internet

3
Types of Networks: by Topology
Network topology is the study of the arrangement of the elements of a network,
especially the physical (real) and logical (virtual) interconnections between nodes.
● Physical Topology means the physical design of a network including the
devices, location and cable installation.
● Logical Topology refers to the fact that how data actually transfers in a
network as opposed to its design.

4
Types of Networks: by Architecture

5
Client-Server model
Each instance of the client software can send data requests to one or more
connected servers.
In turn, the servers can accept these requests, process them, and return the
requested information to the client.

Characteristics of a Client: Characteristics of a Server


• Initiates requests • Never initiates requests or
• Waits for replies activities
• Receives replies • Waits for and replies to requests
• Connects to a small number of from connected clients
servers at one time • A server can remotely
• Interacts directly with end-users using install/uninstall applications and
a GUI transfer data to the intended clients 6
Protocols and ports
A protocol is a convention or standard that controls or enables the connection,
communication, and data transfer between two computing endpoints.

A protocol is the pre-defined way that someone who wants to use a service talks
with that service. The "someone" could be a person, but more often it is a computer
program like a Web browser.

A port is an application-specific or process-specific software construct serving as a


communications endpoint used by Transport Layer protocols of the Internet Protocol
Suite, such as TCP and UDP.

A port is an imaginary place where incoming packets of information can arrive


A specific port is identified by its number, a.k.a. the port number

7
ISO/OSI model

8
Protocols and ports
● IP (Internet Protocol) – is a protocol used for communicating data across a packet-switched interwork
using the Internet Protocol Suite, also referred to as TCP/IP
● TCP (Transmission Control Protocol) – is one of the core protocols of the Internet Protocol Suite. TCP
operates at a higher level, concerned only with the two end systems, for example a Web browser and
a Web server. In particular, TCP provides reliable, ordered delivery of a stream of bytes from one
program on one computer to another program on another computer.
● UDP (User Datagram Protocol) - With UDP, computer applications can send messages, in this case
referred to as datagrams, to other hosts on an IP network without requiring prior communications to
set up special transmission channels or data paths. UDcomputer applications can send messages, in
this case referred to as datagrams, to other hosts on an IP network without requiring prior
communications to set up special transmission channels or data paths.
● HTTP (Hypertext Transfer Protocol) – is used for retrieving inter-linked text document led to the
establishment of the Word Wide Web.
● DHCP (Dynamic Host Configuration Protocol) - is a protocol used by networked devices (clients) to
obtain the information necessary for operation in an Internet Protocol network.
● SSH (Secure Shell Remote Protocol) – is a network protocol that allows data to be exchanged using a
secure channel between two networked devices
● FTP (File Transfer Protocol) – is a network protocol used to transfer data from one computer to
another through a network such as the Internet. FTP is a file transfer protocol for exchanging and
manipulating files over a TCP computer network. An FTP client may connect to an FTP server to
manipulate files on that server.

9
HTTP protocol
HTTP is short for HyperText Transfer Protocol. HTTP is the underlying protocol
used by the World Wide Web and this protocol defines how messages are formatted
and transmitted, and what actions Web servers and browsers should take in
response to various commands.

10
HTTP methods
GET
The GET method is used to retrieve information from the given
server using a given URI. Requests using GET should only
retrieve data and should have no other effect on the data.
HEAD
Same as GET, but transfers the status line and header section
only.
POST
A POST request is used to send data to the server, for
example, customer information, file upload, etc. using HTML
forms.
PUT
Replaces all current representations of the target resource with
the uploaded content. 11
HTTP response codes

12
Chrome DevTools
For more details can read - https://habrahabr.ru/company/simbirsoft/blog/337116/.com

The Chrome Developer Tools (DevTools for short), are a set of web authoring and debugging tools built into
Google Chrome. The DevTools provide web developers deep access into the internals of the browser and
their web application. Use the DevTools to efficiently track down layout issues, set JavaScript breakpoints,
and get insights for code optimization.

13
Chrome DevTools: Device Mode
Use Chrome DevTools' Device Mode to build mobile-first, fully responsive websites. Learn how to use it to
simulate a wide range of devices and their capabilities.

14
Chrome DevTools
The Elements tool allows you to see the web page as the browser sees it. That is, using the Elements tool,
you can see the raw HTML, raw CSS styles, the Document Object Model, and manipulate either in real time

The Profiles tool helps you capture and analyze the performance of JavaScript scripts. For example, you
can learn which functions take the most time to execute and zero in on exactly where to optimize.

The Audit tool is like having your own web optimization consultant sitting next to you. This tool can analyze
a page as it loads and provide suggestions and optimizations for decreasing page load time and increase
perceived (and real) responsiveness.

From the Console, you can enter arbitrary JavaScript and programmatically interact with your page.

15
Chrome DevTools

16
Exercises
1. Equivalence partitioning and Boundary value analysis
To calculate the electricity cost user should enter an old and a new values of electricity
counter and press “Calc” button. It works only if values are entered correctly:
- contain only digits;
- no longer than 6 digits;
- new value is not less than an old one;

2. Build equivalence classes (partitions) based on given information


3. Stand Out boundary values

2. State transition
User wants to replenish the account using self-service kiosk. He enters the account
number and in case it is active the user is asked to enter the sum and select the way
of replenishment: from the credit card or by cash. After the cash/credit card is
inserted the system checks whether enough money is available (available on the
credit card or inserted into the kiosk). If there is enough money the account is
replenished. In other case the user is asked to correct sum or cancel the operation.

4. Build state transition diagram based on given information


Practice to lesson 5:
Write Test Cases to Diet&Diary Calculator:
1. Go to http://dietadiary.com/calories-calculator/download
2. Download and install the Diet&Diary Calculator
3. Create checklist to verify only functionality of the Calculator
4. Write 3 TCs based on created checklist
5. Report TCs in TestRail

Notes:
⬜ send checklist via email together with TCs numbers
Additional practice to lesson 5:
1. Equivalence partitioning and Boundary value analysis
To have ability to buy products on web store user should register his login name on web registration
page. The field for entering login name should:
· contain letters only
· to be no shorter than 4 characters
· to be no longer than 10 characters.
Login names which do not meet requirements will not be allowed.
⬜ Build equivalence classes (partitions) based on given information
⬜ Stand Out boundary values

2. State transition
User tops his friend’s mobile account using sending money option. He enters amount of money he likes
to send, types mobile number and click ‘Send’. If entered amount of money is allowed and phone
number format is correct, then money will be sent and user will get appropriate message. If sum of
replenishment is too low or too high, then user should re-enter it. If phone number format is incorrect,
then user should enter correct phone number.
1. Build state transition diagram based on given information
Thank you!

You might also like