Date: Thu, 06 Sep 2007 09:18:37 -0500 From: "Peter Lei (peterlei)" <peterlei@cisco.com> To: Randall Stewart <rrs@cisco.com>, sazzadur rahman <rahman.sazzadur@gmail.com> Cc: freebsd-net@freebsd.org Subject: Re: A query regarding sctp_bindx api in SCTP Message-ID: <46E00C3D.1010009@cisco.com> In-Reply-To: <46DFFC8E.2030502@cisco.com> References: <82bdb5ec0709051817j16bfea69u74b9f4978c1f00fc@mail.gmail.com> <46DFFC8E.2030502@cisco.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a cryptographically signed message in MIME format. --------------ms010301060508070900070306 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Randall Stewart wrote: > sazzadur rahman wrote: >> Hello, >> I am using sctp patch for freebsd6.1. For dynamic address >> configuration, I >> am calling sctp_bindx() API after successfull bind() and connect() API's. >> Although sctp_bindx() API successfully returns 0, the debug message >> shows: >> >> addr_mgmt_assoc: added to pending list... >> asconf_queue_add: appended asconf ADD_IP_ADDRESS... >> >> And I didn't see any ASCONF chunk sent to the peer in the tcpdump. >> Hence, I >> am confused why it should be in the pendling list instead of immediate >> send >> to peer? > > Hmm.. I would like to see a packet trace of this as well.. > > A couple of thoughts. > > a) The 6.x code is a bit out of date.. I need to update > and get a new patch out for you.. I know Peter did some > work on the ASCONF code recently.. so there may be some > fixes that have not been propagated to 6.x.. which could > be a problem (added Peter for that reason even though I > know he subscribes.. not sure how often he reads net). I don't recall if there was something in the timeframe of 6.1 where bindx() broke or not... there were a number of bugs fixed surrounding bindx() though for 7.0/-current for the new address list handling and change to use the iterator work thread. > b) Whenever an address gets added like this, then the address will > go into a pending point in the assoc. Since it can't be used > yet i.e. the ASCONF-ACK must be returned BEFORE the address > is part of the assoc. I am also not sure of the state of your > association at this point. I will try testing this... since it > is most likely in a front state, this may also be a problem. > The ASCONF cannot be sent until after we reach ESTABLISHED... not > sure we have tested this scenario. Any queued asconf's would go out after hitting the established state... There was a bug in the 7.0 code where the asconf would not get queued at all in the early front state (COOKIE-WAIT) because the 'peer supports addip' flag had not been set yet. > c) Normally I would think you should do all the bindx BEFORE the > connect. When you do subset binding (which you are doing here > since you are NOT bound-all) then what you are saying is that > YOU the application wish to manage the addresses.. no automatic > ASCONF will be done for you. When you do the bindx() it is supposed > to kick off the ASCONF.. but again.. this may be an issue > since you are in a front state... I will test this scenario > with the latest 7.0 code and see if I can recreate it. This works fine on 7.0. If Randy can update the patch for 6.1, we might be able to better assist. --peter > R > >> >> In draft-ietf-tsvwg-addip-sctp-22.txt: page 20, A3, I have found that >> "If an >> ASCONF chunk is outstanding, then the ASCONF chunk should be queued for >> later transmission and no further action should be taken until the >> previous >> ASCONF is acknowledged or a timeout occurs." But as I am calling >> sctp_bindx() for the first time, there should not be any previous ASCONF >> existing. >> >> Does anyone have any idea what I am missing here? >> I would appriciate any help in this regard. >> >> Best Regards, >> Md. Sazzadur Rahman, >> Graduate Student, >> School of Computer Science, >> University of Oklahoma, >> Norman, USA >> >> ---------------------------code segment I have used--------------------- >> //socket >> s = socket(AF_INET, SOCK_STREAM, IPPROTO_SCTP); >> >> //bind >> memset(&myAddr, 0, sizeof myAddr); >> myAddr.sin_family = AF_INET; >> myAddr.sin_port = htons(5060); >> myAddr.sin_addr.s_addr = inet_addr("129.15.78.125"); >> if (bind(s, (struct sockaddr *)&myAddr, sizeof myAddr) < 0) { >> goto close; >> } >> //connect >> memset(&farAddr, 0, sizeof farAddr); >> farAddr.sin_family = AF_INET; >> farAddr.sin_port = htons(6060); >> farAddr.sin_addr.s_addr = inet_addr( "129.15.78.114" ); >> int iRet = connect(s, (struct sockaddr *)&farAddr, sizeof >> farAddr); >> >> //sctp_bindx >> struct sockaddr_in my2ndAddr; >> memset(&my2ndAddr, 0, sizeof my2ndAddr); >> my2ndAddr.sin_len = sizeof my2ndAddr; >> my2ndAddr.sin_family = AF_INET; >> my2ndAddr.sin_port = htons(5060); >> my2ndAddr.sin_addr.s_addr = inet_addr("129.15.78.126"); >> >> iRet = sctp_bindx(s,(struct >> sockaddr*)&my2ndAddr,1,SCTP_BINDX_ADD_ADDR); >> >> ------------------------------------------ >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" >> > > -- Peter Lei IP Engineering Tech Center Cisco Systems, Inc. office: (773) 695-8201 mobile: (847) 830-8869 peterlei@cisco.com --------------ms010301060508070900070306 Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIJBzCC At4wggJHoAMCAQICEC6nrtnINUwxJqQhHgziOxswDQYJKoZIhvcNAQEFBQAwYjELMAkGA1UE BhMCWkExJTAjBgNVBAoTHFRoYXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMT I1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBJc3N1aW5nIENBMB4XDTA3MDUwNTE5MTY0MFoX DTA4MDUwNDE5MTY0MFowRDEfMB0GA1UEAxMWVGhhd3RlIEZyZWVtYWlsIE1lbWJlcjEhMB8G CSqGSIb3DQEJARYScGV0ZXJsZWlAY2lzY28uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAwYnrr9EnG79FXqKjtxyVKd+iDkLIUzSnQ/N7g1RIx898b31Z1i/Cr9MOPWEY mSkkKvSQzZCKP/H7LxZUoDiL8jtL0HroDOiESD3RAL7do5u6JYdEZ7QOiLcdrN2VX4G3GRdP I64W8N/AzpeUCXp6GdqAjPSzGgc4IP9Z/6/wUIFVK9BVhD0DD3WngnOvRQ9LMbfaYHbnpK6/ 3hanVp4xVIPSwjIZIY3/W8ArwJ958MjkFMe4LuiOJ+pGcrHKXFgTv25RrDlpVjntnh0VgUmI khoaJ9c1lqYsMAJOFRR2MRu5scXeKOw50XSD7s4XIYDK8CsIArben8ZKRMy/7ce3hwIDAQAB oy8wLTAdBgNVHREEFjAUgRJwZXRlcmxlaUBjaXNjby5jb20wDAYDVR0TAQH/BAIwADANBgkq hkiG9w0BAQUFAAOBgQA9PBoqRjvRt2InmWFEFkFmOO5dgSU0pau5duM5rx8gk87dARmsiWxe wcmepIiichIQL+qPiwNAOG+lwdtMwHldnfsTOvvZOnpU0wkTjrM664zTf8BjgyEBbKkSgFmg EUYoP3UiJUAWJJkTHH0mq8yT1BdRj4OZUGBbarbe6M6xbzCCAt4wggJHoAMCAQICEC6nrtnI NUwxJqQhHgziOxswDQYJKoZIhvcNAQEFBQAwYjELMAkGA1UEBhMCWkExJTAjBgNVBAoTHFRo YXd0ZSBDb25zdWx0aW5nIChQdHkpIEx0ZC4xLDAqBgNVBAMTI1RoYXd0ZSBQZXJzb25hbCBG cmVlbWFpbCBJc3N1aW5nIENBMB4XDTA3MDUwNTE5MTY0MFoXDTA4MDUwNDE5MTY0MFowRDEf MB0GA1UEAxMWVGhhd3RlIEZyZWVtYWlsIE1lbWJlcjEhMB8GCSqGSIb3DQEJARYScGV0ZXJs ZWlAY2lzY28uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwYnrr9EnG79F XqKjtxyVKd+iDkLIUzSnQ/N7g1RIx898b31Z1i/Cr9MOPWEYmSkkKvSQzZCKP/H7LxZUoDiL 8jtL0HroDOiESD3RAL7do5u6JYdEZ7QOiLcdrN2VX4G3GRdPI64W8N/AzpeUCXp6GdqAjPSz Ggc4IP9Z/6/wUIFVK9BVhD0DD3WngnOvRQ9LMbfaYHbnpK6/3hanVp4xVIPSwjIZIY3/W8Ar wJ958MjkFMe4LuiOJ+pGcrHKXFgTv25RrDlpVjntnh0VgUmIkhoaJ9c1lqYsMAJOFRR2MRu5 scXeKOw50XSD7s4XIYDK8CsIArben8ZKRMy/7ce3hwIDAQABoy8wLTAdBgNVHREEFjAUgRJw ZXRlcmxlaUBjaXNjby5jb20wDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQUFAAOBgQA9PBoq RjvRt2InmWFEFkFmOO5dgSU0pau5duM5rx8gk87dARmsiWxewcmepIiichIQL+qPiwNAOG+l wdtMwHldnfsTOvvZOnpU0wkTjrM664zTf8BjgyEBbKkSgFmgEUYoP3UiJUAWJJkTHH0mq8yT 1BdRj4OZUGBbarbe6M6xbzCCAz8wggKooAMCAQICAQ0wDQYJKoZIhvcNAQEFBQAwgdExCzAJ BgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEa MBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2Vy dmljZXMgRGl2aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTEr MCkGCSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0wMzA3MTcw MDAwMDBaFw0xMzA3MTYyMzU5NTlaMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUg Q29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1h aWwgSXNzdWluZyBDQTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAxKY8VXNV+065ypla HmjAdQRwnd/p/6Me7L3N9VvyGna9fww6YfK/Uc4B1OVQCjDXAmNaLIkVcI7dyfArhVqqP3FW y688Cwfn8R+RNiQqE88r1fOCdz0Dviv+uxg+B79AgAJk16emu59l0cUqVIUPSAR/p7bRPGEE QB5kGXJgt/sCAwEAAaOBlDCBkTASBgNVHRMBAf8ECDAGAQH/AgEAMEMGA1UdHwQ8MDowOKA2 oDSGMmh0dHA6Ly9jcmwudGhhd3RlLmNvbS9UaGF3dGVQZXJzb25hbEZyZWVtYWlsQ0EuY3Js MAsGA1UdDwQEAwIBBjApBgNVHREEIjAgpB4wHDEaMBgGA1UEAxMRUHJpdmF0ZUxhYmVsMi0x MzgwDQYJKoZIhvcNAQEFBQADgYEASIzRUIPqCy7MDaNmrGcPf6+svsIXoUOWlJ1/TCG4+DYf qi2fNi/A9BxQIJNwPP2t4WFiw9k6GX6EsZkbAMUaC4J0niVQlGLH2ydxVyWN3amcOY6MIE9l X5Xa9/eH1sYITq726jTlEBpbNU1341YheILcIRk13iSx0x1G/11fZU8xggNkMIIDYAIBATB2 MGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQu MSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1haWwgSXNzdWluZyBDQQIQLqeu2cg1 TDEmpCEeDOI7GzAJBgUrDgMCGgUAoIIBwzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG CSqGSIb3DQEJBTEPFw0wNzA5MDYxNDE4MzdaMCMGCSqGSIb3DQEJBDEWBBRe++VI7mFv7Snn YK5oeaD4plVY5TBSBgkqhkiG9w0BCQ8xRTBDMAoGCCqGSIb3DQMHMA4GCCqGSIb3DQMCAgIA gDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG9w0DAgIBKDCBhQYJKwYBBAGCNxAE MXgwdjBiMQswCQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkg THRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECEC6n rtnINUwxJqQhHgziOxswgYcGCyqGSIb3DQEJEAILMXigdjBiMQswCQYDVQQGEwJaQTElMCMG A1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkgTHRkLjEsMCoGA1UEAxMjVGhhd3RlIFBl cnNvbmFsIEZyZWVtYWlsIElzc3VpbmcgQ0ECEC6nrtnINUwxJqQhHgziOxswDQYJKoZIhvcN AQEBBQAEggEAYI0C1a8MJiGZkFzFLpH+RXR27L6ci/SUJy472FVqcWFdKzhSWGf+59VTYz5Q 7tUNwxPHoK1DW1Hbc6hq0pAIoFfZoP72jA4kjdzY0DSuDAlnDUwCVG287x0v7zNuX/sAHRgx /k7/3JHwXHarxCpD5JcP9NsXU68SfmVu2lHYigXgcociX55k/O/dvOlCA9t+TucL1RdpdmZq SROG/YtUBrGx1CzZG7Mx+khDehICkjiLwQLexZ3bcADWtYjXs3ueQTjhforNkBbdXcT4OyHD MQJ27a/61nisZEG6RhMTNZWHFwfw7C2Y0dvBgcVzOEvJWMzeIFfA0l/4bCIuXiQcAAAAAAAA AA== --------------ms010301060508070900070306--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46E00C3D.1010009>