transum - wireshark

24
TRANSUM Paul Offord, Advance7

Upload: others

Post on 19-Dec-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TRANSUM - Wireshark

TRANSUMPaul Offord, Advance7

Page 2: TRANSUM - Wireshark

Agenda

• Basic concept

• RTE model

• TRANSUM

• Troubleshooting scenarioo SMB file server

o Web & database

Page 3: TRANSUM - Wireshark

System terminology

Web Server DatabaseBrowser

Network

Programs running

in Processes

Infrastructure

Page 4: TRANSUM - Wireshark

Client and Service

Web Server

Fileserver

Browser

NetworkC CS

S

DatabaseC

S

HTTP

SMB

TDS

Page 5: TRANSUM - Wireshark

Process-to-process communications

Client

Process

Service

Process

Connect

Disconnect

Tim

e

Incre

asin

g

Data Transfer

TCP Ports

Page 6: TRANSUM - Wireshark

APDU Request-Response Pairs

Client

e.g.

Browser

NetworkService

e.g. Web

Server

Request

Response

Se

rvic

e

Tim

e

Note:

App. Messages

(APDUs)

not packets

AP

DU

Response

Tim

e

Incre

asin

g T

ime o

f Day

Page 7: TRANSUM - Wireshark

Client and service timeWeb Server DatabaseBrowser

Req

Rsp

Req

Rsp

Req

Rsp Service time

C CS S

Client time

Client time

Service time

Client time

Client time here

refers to the

Web Server as

a client of the

Database

Page 8: TRANSUM - Wireshark

Service port numbersWeb Server DatabaseBrowser

Req

Rsp

Req

Rsp

ReqRsp

C CS S

TCP

Port

80

TCP

Port

5432

TCP

Port

64006

Page 9: TRANSUM - Wireshark

Client port, service port & direction

Going to the Service

on TCP Port 80

Coming from the Client

on TCP Port 64008

Page 10: TRANSUM - Wireshark

APDUs vs. packets

Request

Response

Request APDU => 1 packet

Response APDU => 4 packets

Page 11: TRANSUM - Wireshark

Response Time Elements model

Web Database

Tim

e In

cre

asin

g

Web Request

Web Response pt. 1

Web Response pt. 2

Client

Time Service Time

Request Spread

Response Spread

Response SpreadA

PD

U R

esp

on

se

Tim

e

Database Req – Part a

Database Req – Part b

Database Req – Part c

Database Req – Part d

Database Rsp – Part α

Database Rsp – Part β

Database Rsp – Part γ

S SC

S – Web service

C – Database client

S – Database service

Just showing packets

with TCP payload

Page 12: TRANSUM - Wireshark

Windows file server access

Windows

File Server

Opening a PDF

Saving a Word doc

C S

TCP

Port

445

Page 13: TRANSUM - Wireshark

File server read

Response

Spread

Includes

Rsp SpreadPacket 267

Page 14: TRANSUM - Wireshark

File server write

Request

SpreadReq Spread

not included

Packet 471

Page 15: TRANSUM - Wireshark

The issue

Reassembly

Enabled

Reassembly

Disabled

Request Spread No Yes

Response Spread Yes No

Page 16: TRANSUM - Wireshark

What that means in practice

Reassembly

Enabled

Reassembly

Disabled

Accurate Read APDU Rsp Time Yes No

Accurate Write APDU Rsp Time No Yes

Accurate Read Service Time No Yes

Accurate Write Service Time Yes No

Page 17: TRANSUM - Wireshark

Time for

Questions

Page 18: TRANSUM - Wireshark

Bottom up vs. top down

Bottom Up Top Down

Application User’s perspective?

Presentation APDU response times?

Session

Transport Evidence of network issues?

Network Ping OK? Traceroute OK?

Data Link Are we seeing FCS errors?

Physical Is the cabling good?

Faster & more reliable

Page 19: TRANSUM - Wireshark

What’s needed

Client Perspective of Performance

• APDU response time

• First request to last response

Service Performance Perspective

• Service time

• Last request to first response

Page 20: TRANSUM - Wireshark

TRANSUM history

• Developed by Advance7 from mid 90s

• Started as a program written in SAS

• Recently ported to Java

• Now a Wireshark LUA plugin

Page 21: TRANSUM - Wireshark

Wireshark LUA plugin

Page 22: TRANSUM - Wireshark

Checking

PDF Read performance

with TRANSUM

Page 23: TRANSUM - Wireshark

SMB multi-credit & congestionWindows

File Server

Opening a PDF

Saving a Word doc

C S

This appears as

Service Time in

RTE Data

Read Request 1

Read Request 2

Page 24: TRANSUM - Wireshark

Generic TCP example