Connection-Oriented

What is Connection-oriented communication?

A connection-oriented protocol like TCP ensures a reliable communication path is established between two devices before transmitting data. It maintains the connection throughout the session.

Why is Connection-oriented communication useful?

Connection-oriented communication is useful because it guarantees that data is delivered accurately, in order, and without duplication. This is essential for services like web browsing, file transfers, and email.

How does Connection-oriented communication work?

A connection-oriented protocol like TCP starts with a three-way handshake to establish a connection. Data is then exchanged reliably using acknowledgments and retransmissions. Once the session is over, the connection is properly closed.

Where is Connection-oriented communication used?

Connection-oriented communication is used in applications where reliability matters — such as web servers (HTTP/HTTPS), file transfers (FTP), emails (SMTP, IMAP), and remote logins (SSH).

Which OSI layer does Connection-oriented communication belong to?

Connection-oriented protocols like TCP operate at the Transport Layer (Layer 4) of the OSI model.

Is Connection-oriented communication Windows specific?

No, connection-oriented communication is not specific to Windows. TCP is implemented on all major platforms including Linux, macOS, and embedded systems.

Is Connection-oriented communication Linux specific?

No, TCP (as a connection-oriented protocol) is supported universally across all operating systems and is a core part of the internet protocol suite.

Which Transport Protocol is used by Connection-oriented communication?

The primary transport protocol used for connection-oriented communication is TCP (Transmission Control Protocol).

Is Connection-oriented communication using client-server model?

Yes, connection-oriented protocols are commonly used in client-server models. A client initiates the connection, and the server manages and responds reliably throughout the session.

  • In this section, you are going to learn

  • Terminology

  • Version Info

  • setup

Connection Oriented - Testcases

S.No

Test Case

Description

Expected Result

1

TCP 3-Way Handshake

Initiate connection

SYN, SYN-ACK, ACK exchanged

2

TCP Connection Establishment

Client connects to server

Connection established

3

TCP Connection Termination

Close connection

FIN, ACK exchanged

4

TCP Connection Reset

Send RST

Connection reset immediately

5

Duplicate SYN Handling

Send duplicate SYN

Handshake continues correctly

6

Delayed ACK Handling

Delay ACK response

Connection remains stable

7

Retransmission on Timeout

Drop ACK

Packet retransmitted

8

Sequence Number Validation

Check sequence numbers

Numbers increment correctly

9

Acknowledgment Number Validation

Check ACK numbers

ACKs match expected values

10

Window Size Negotiation

Exchange window size

Flow control established

11

Congestion Control Start

Start slow start

Congestion window increases exponentially

12

Congestion Avoidance

Enter avoidance phase

Window increases linearly

13

Fast Retransmit

Trigger triple duplicate ACKs

Packet retransmitted

14

Fast Recovery

Recover after fast retransmit

Congestion window adjusted

15

TCP Keepalive

Enable keepalive

Idle connection maintained

16

TCP Timeout

Idle beyond timeout

Connection closed

17

Half-Open Connection

Client closes, server doesnt

Server detects and closes

18

Simultaneous Open

Both sides send SYN

Connection established

19

Simultaneous Close

Both sides send FIN

Connection closed cleanly

20

TCP Port Unreachable

Connect to closed port

RST received

21

TCP with NAT

Use NAT device

Connection maintained

22

TCP with Firewall

Block port

Connection fails

23

TCP with VPN

Use VPN tunnel

Connection established

24

TCP with Packet Loss

Drop packets

Retransmission occurs

25

TCP with Packet Reordering

Reorder packets

Data reassembled correctly

26

TCP with Duplicate Packets

Send duplicates

Duplicates discarded

27

TCP with Fragmentation

Send large data

Data reassembled correctly

28

TCP with MSS Negotiation

Negotiate MSS

Data sent within limits

29

TCP with Window Scaling

Enable scaling

Large window supported

30

TCP with Selective ACK

Enable SACK

Only missing segments retransmitted

31

TCP with Timestamps

Enable timestamps

RTT measured accurately

32

TCP with Delayed ACK

Enable delayed ACK

ACKs sent after delay

33

TCP with Nagles Algorithm

Enable Nagle

Small packets coalesced

34

TCP with Push Flag

Set PSH flag

Data pushed immediately

35

TCP with Urgent Pointer

Use URG flag

Urgent data processed

36

TCP with Zero Window

Set window to 0

Sender pauses transmission

37

TCP Window Update

Increase window size

Sender resumes transmission

38

TCP with High Latency

Simulate delay

Connection remains stable

39

TCP with High Bandwidth

Send large data

Connection handles throughput

40

TCP with Multiple Streams

Open multiple connections

All connections maintained

41

TCP with TLS

Wrap in TLS

Secure connection established

42

TCP with IPv6

Use IPv6

Connection established

43

TCP with IPv4

Use IPv4

Connection established

44

TCP with SYN Flood

Send many SYNs

Server handles or drops

45

TCP with FIN Flood

Send many FINs

Server handles or drops

46

TCP with RST Flood

Send many RSTs

Server handles or drops

47

TCP with Checksum Error

Corrupt checksum

Packet discarded

48

TCP with Invalid Flags

Send invalid flags

Packet dropped or ignored

49

TCP with Connection Migration

Change IP mid-session

Connection fails (TCP not mobile)

50

TCP with Application Layer

Use HTTP over TCP

Data transmitted reliably

  • Reference links