31 #include <cs_subconparams.h> |
31 #include <cs_subconparams.h> |
32 #include <networking/qos3gpp_subconparams.h> |
32 #include <networking/qos3gpp_subconparams.h> |
33 |
33 |
34 #ifdef SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW |
34 #ifdef SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW |
35 #include <tcpdfltrecvwin.h> |
35 #include <tcpdfltrecvwin.h> |
36 // Custom type for WLAN bearer |
|
37 const TUint32 KNetMcprWlanBearer = 0x3C; |
|
38 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW |
36 #endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW |
39 #include <commsdattypeinfov1_1_internal.h> |
37 #include <commsdattypeinfov1_1_internal.h> |
40 |
38 |
41 #if defined __CFLOG_ACTIVE || defined SYMBIAN_TRACE_ENABLE |
39 #if defined __CFLOG_ACTIVE || defined SYMBIAN_TRACE_ENABLE |
42 #define KNetMCprTag KESockMetaConnectionTag |
40 #define KNetMCprTag KESockMetaConnectionTag |
477 iBearerInfoMap.Insert(KHsdpaBearer,KBearerHsdpaWinSize); |
475 iBearerInfoMap.Insert(KHsdpaBearer,KBearerHsdpaWinSize); |
478 |
476 |
479 //TCP receive window size for ethernet |
477 //TCP receive window size for ethernet |
480 iBearerInfoMap.Insert(KEthernetBearer,KBearerEthernetWinSize); |
478 iBearerInfoMap.Insert(KEthernetBearer,KBearerEthernetWinSize); |
481 |
479 |
482 //TCP receive window size for WLAN bearer |
|
483 iBearerInfoMap.Insert(KNetMcprWlanBearer,KBearerWlanWinSize); |
|
484 |
|
485 //TCP receive window size for other bearer |
480 //TCP receive window size for other bearer |
486 iBearerInfoMap.Insert(KDefaultBearer,KBearerDefaultWinSize); |
481 iBearerInfoMap.Insert(KDefaultBearer,KBearerWlanWinSize); |
487 } |
482 } |
488 |
483 |
489 void CDfltTCPReceiveWindowSize::SetTcpWin(TUint aBearerType) |
484 void CDfltTCPReceiveWindowSize::SetTcpWin(TUint aBearerType) |
490 /** |
485 /** |
491 * Set TCP receive window |
486 * Set TCP receive window |
492 */ |
487 */ |
493 { |
488 { |
494 // Get bearer window size from hash table |
489 //Set the TCP Receive Window. |
495 TUint* iWinSizePtr = static_cast<TUint*>(iBearerInfoMap.Find(aBearerType)); |
490 iWinSize = *static_cast<TUint*>(iBearerInfoMap.Find(aBearerType)); |
496 |
|
497 // Check whether bearer type was known |
|
498 if ( iWinSizePtr != NULL ) |
|
499 { |
|
500 // Set the TCP Receive Window |
|
501 iWinSize = *iWinSizePtr; |
|
502 } |
|
503 else |
|
504 { |
|
505 // Use default window |
|
506 iWinSize = KBearerDefaultWinSize; |
|
507 } |
|
508 |
491 |
509 //Set the Max TCP receive Window. |
492 //Set the Max TCP receive Window. |
510 SetMaxWinSize(aBearerType); |
493 SetMaxWinSize(aBearerType); |
511 } |
494 } |
512 |
495 |
526 // |
509 // |
527 // TCP receive window size will be maximum for HSDPA bearers. |
510 // TCP receive window size will be maximum for HSDPA bearers. |
528 // |
511 // |
529 iMaxWinSize = KBearerHsdpaWinSize; |
512 iMaxWinSize = KBearerHsdpaWinSize; |
530 break; |
513 break; |
531 case KNetMcprWlanBearer: |
514 case KEthernetBearer: |
532 iMaxWinSize = KBearerWlanWinSize; |
515 iMaxWinSize = KEthernetMaxWinSize; |
533 break; |
516 break; |
534 |
517 |
535 case KEthernetBearer: |
|
536 iMaxWinSize = KEthernetMaxWinSize; |
|
537 break; |
|
538 |
|
539 default: |
518 default: |
540 iMaxWinSize = KBearerDefaultMaxWinSize; |
519 iMaxWinSize = KEthernetMaxWinSize; |
541 break; |
520 break; |
542 } |
521 } |
543 } |
522 } |
544 |
523 |
545 |
524 |