Today I prepared some stats about network traffic in NAV 2009 RTC client. You can compare the results with C/Side client (classic client).
Measuring: for measuring I have used the Microsoft Network Monitor for catching the NAV communication between client and DB Server/Service tier. Than I create sum of Frame Length, TCP Payload length and count of frames for the communication for each process. The results are not exact, because there are many things I didn’t take into account (cold/warm buffers, transfers of objects into classic client, used another order for measuring etc.). It means take the stats as example, how it can look like, but not as precise bandwidth measuring. Sizes are in Bytes.
Start of client (Role center with data on RTC, Navigation Pane only on Classic)
Opening list (different size of window, in Classic opening first card and F5 on card)
Open order card
Nothing to post
Closing order card
Order confirmation preview
Open departments page
Only in RTC
Adj. cost - item entries
Post cost to G/L
Processing + printing
Add line on Sales Order (filled fields Item no., location, quantity, price)
Form the table you can see the effect of 3-tier system. When you are processing some data, RTC is much better, because no raw data are transfered. Classic client needs to read all data to process them. But problem for RTC are Reports. When you want to print something in RTC, the client need to transfer the Flat Table structure with all the data to process them in the Reporting System Client. And this table can be big. One page with order confirmation took 1MB of data. I do not want to see some 100page report… and I am not talking about bitmaps on the report (e.g. Company logo). But because printing is not critical operation in most cases in NAV, it is OK, because critical things like data processing are 90% of whole application. When you create sum for whole data transferred for both clients, classic client transferred around 10MB and RTC only 5.5MB. Still, RTC is much better with the transfers and this difference will be much bigger in real live when you are mostly posting and sometime printing. Another difference is the Frame count. RTC is sending much less frames but they are bigger. It can lead to change in performance too. But this is question for some Network specialist.
What is you opinion? Are you happy that I created this table? Was it helpful for you?
I am waiting for your comments…
No, it is correct, the data for the report are huge, the data processed during the posting are smaller, than result for printing... (I think it was 4 or 9 page report...). May be there is some error in measuring, I will try to make another measure when I will have some time.
I'm definitely happy with your work. I love reading your blogs! :-).
I don't get the "Post cost to G/L" though ... . Didn't you switch results?
Yes I think its great. We need to start gathering these stats now to get a feel for what is going on. This will help developers to optimize their code.